Update for Emacs 22.0.99.
authorRob Browning <rlb@defaultvalue.org>
Sat, 12 May 2007 18:02:46 +0000 (11:02 -0700)
committerRob Browning <rlb@defaultvalue.org>
Sat, 12 May 2007 18:02:46 +0000 (11:02 -0700)
36 files changed:
debian/.gitignore [new file with mode: 0644]
debian/README.add-on-package-maintainers [new file with mode: 0644]
debian/autofiles-diff-header [new file with mode: 0644]
debian/bin/info/install-info [new file with mode: 0644]
debian/changelog [new file with mode: 0644]
debian/compat [new file with mode: 0644]
debian/control [new file with mode: 0644]
debian/control.in [new file with mode: 0644]
debian/copyright [new file with mode: 0644]
debian/copyright.in [new file with mode: 0644]
debian/dfsg-splitter [new file with mode: 0644]
debian/emacsVER-bin-common.postinst [new file with mode: 0644]
debian/emacsVER-bin-common.prerm [new file with mode: 0644]
debian/emacsVER-common.README [new file with mode: 0644]
debian/emacsVER-common.docs [new file with mode: 0644]
debian/emacsVER-common.postinst [new file with mode: 0644]
debian/emacsVER-common.prerm [new file with mode: 0644]
debian/emacsVER.README [new file with mode: 0644]
debian/emacsVER.README.Debian [new file with mode: 0644]
debian/emacsVER.desktop [new file with mode: 0644]
debian/emacsVER.menu [new file with mode: 0644]
debian/emacsVER.postinst [new file with mode: 0644]
debian/emacsVER.prerm [new file with mode: 0644]
debian/mangle-info [new file with mode: 0644]
debian/missing-file.dfsg [new file with mode: 0644]
debian/patches/autofiles.diff [new file with mode: 0644]
debian/patches/avoid-fakemail-mail-loss.diff [new file with mode: 0644]
debian/patches/debian-adjust-mail-from-addresses.diff [new file with mode: 0644]
debian/patches/debian-startup.diff [new file with mode: 0644]
debian/patches/fix-vc-path.diff [new file with mode: 0644]
debian/patches/handle-dfsg-split.diff [new file with mode: 0644]
debian/patches/misc-unseparated.diff [new file with mode: 0644]
debian/patches/require-movemail-use-liblockfile.diff [new file with mode: 0644]
debian/patches/series [new file with mode: 0644]
debian/patches/version-mention-debian.diff [new file with mode: 0644]
debian/rules [new file with mode: 0755]

diff --git a/debian/.gitignore b/debian/.gitignore
new file mode 100644 (file)
index 0000000..a6c581e
--- /dev/null
@@ -0,0 +1,38 @@
+*~
+.\#*
+/build-nox
+/build-x
+/emacs-common.README.00
+/emacs-common.README.01
+/emacs21-bin-common.README.Debian
+/emacs21-bin-common.postinst
+/emacs21-bin-common.postrm
+/emacs21-bin-common.prerm
+/emacs21-bin-common.substvars
+/emacs21-bin-common
+/emacs21-common.README.Debian
+/emacs21-common.docs
+/emacs21-common.links
+/emacs21-common.postinst
+/emacs21-common.prerm
+/emacs21-el.prerm
+/emacs21-nox.README.Debian
+/emacs21-nox.desktop
+/emacs21-nox.links
+/emacs21-nox.menu
+/emacs21-nox.postinst
+/emacs21-nox.postrm
+/emacs21-nox.prerm
+/emacs21.README.Debian
+/emacs21.desktop
+/emacs21.links
+/emacs21.menu
+/emacs21.postinst
+/emacs21.postrm
+/emacs21.prerm
+/files
+/patches/autofiles.diff
+/protected-files.tgz
+/stamp
+/tmp-alt-list
+\#*\#
diff --git a/debian/README.add-on-package-maintainers b/debian/README.add-on-package-maintainers
new file mode 100644 (file)
index 0000000..ee71a45
--- /dev/null
@@ -0,0 +1,2 @@
+Please see /usr/share/doc/emacsen-common/debian-emacs-policy.gz for
+information on how to properly structure your emacs add-on packages.
diff --git a/debian/autofiles-diff-header b/debian/autofiles-diff-header
new file mode 100644 (file)
index 0000000..b4d6dae
--- /dev/null
@@ -0,0 +1,3 @@
+* The autoconf related files have been updated.
+  Patch: autofiles.dpatch
+  Author: N/A (automatically generated)
diff --git a/debian/bin/info/install-info b/debian/bin/info/install-info
new file mode 100644 (file)
index 0000000..ff18a51
--- /dev/null
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+# Dummy script to fool emacs install into thinking it did something useful.
+
+exit 0
diff --git a/debian/changelog b/debian/changelog
new file mode 100644 (file)
index 0000000..3fecde7
--- /dev/null
@@ -0,0 +1,1201 @@
+emacs22 (22.0.99+1-1) experimental; urgency=low
+
+  * Update to 22.0.99.
+
+ -- Rob Browning <rlb@defaultvalue.org>  Sat, 12 May 2007 11:01:29 -0700
+
+emacs22 (22.0.95+1-1) experimental; urgency=low
+
+  * New emacs22 packages.
+
+  * The debian/dfsg-splitter has been updated. [rlb]
+
+  * Obsolete patches have been removed. [rlb]
+
+ -- Rob Browning <rlb@defaultvalue.org>  Sun, 11 Mar 2007 10:14:16 -0700
+
+emacs21 (21.4a+1-5) unstable; urgency=low
+
+  * Move man pages back to emacs21-common. (closes: #414321) [rlb]
+    - debian/rules
+  
+ -- Rob Browning <rlb@defaultvalue.org>  Sat, 10 Mar 2007 16:16:15 -0800
+
+emacs21 (21.4a+1-4) unstable; urgency=low
+
+  * Merge useful bits from Jerome and my orphaned emacs22 tree (which
+    itself was based on Jérôme's snapshot tree) in preparation for
+    upcoming emacs22 branch.  Many thanks to Jérôme.  A partial summary of
+    these changes follows:
+
+    Add debian/rules info_subdir variable.
+  
+    Modify desktop and menu files version.  This approach should work for
+    normal versions, "Emacs 21.4a (X11)", and for snapshots, "Emacs
+    2006-09-09 (X11)".  See the menu_ver variable in debian/rules.
+
+    Overhaul debian/rules to build all of the install trees at once and
+    then call the dh_* programs generically rather than calling them once
+    per package. [rlb]
+
+    - emacsVER-bin-common.postinst
+    - emacsVER-bin-common.prerm
+    - emacsVER-common.postinst
+    - emacsVER-common.prerm
+    - emacsVER.desktop
+    - emacsVER.menu
+    - rules
+
+ -- Rob Browning <rlb@defaultvalue.org>  Sat,  3 Mar 2007 16:13:23 -0800
+
+emacs21 (21.4a+1-3) unstable; urgency=high
+
+  * Fix build failure on mipsel.
+    Thanks to Aurelien Jarno <aurelien@aurel32.net>.
+    (closes: #401665) [Jérôme Marant]
+    - debian/patches/arch-mipsel.diff: set OUTPUT_ARCH to `mips'
+      instead of `mipsel'.
+
+  * Changed FSF address in copyright file. [Jérôme Marant]
+    - debian/copyright.in
+    - debian/copyright
+
+ -- Jerome Marant <jerome@debian.org>  Thu, 04 Jan 2007 08:31:28 +0100
+
+emacs21 (21.4a+1-2) unstable; urgency=low
+
+  * Make both emacs21 and emacs21-nox packages suggest non-DFSG
+    packages and fix erroneous emacs21-common dependency on it
+    [Jérôme Marant]
+    - debian/control.in
+    - debian/control
+
+  * Grab yow mode from the CVS trunk so it is now compatible with yow.lines
+    replacement which also comes from the CVS trunk.
+    (closes: #395501) [Jérôme Marant]
+    - debian/patches/yow-mode-from-cvs.diff: new patch.
+    - debian/patches/series: updated.
+  
+  * Properly handle ldapsearch output from OpenLDAP version 2 and above.
+    Thanks to both Joshua Judson Rosen <joshuar@russound.com> and
+    Henrik Holmboe <henrik@holmboe.se>.
+    (closes: #381484) [Jérôme Marant]
+    - debian/patches/ldapsearch-output.diff: new patch.
+    - debian/patches/series: updated.
+
+  * Mention license of both emacs.1 and etags.1 manpages and add a copy of
+    the GFDL to the copyright file (closes: #396875) [Jérôme Marant]
+    - debian/copyright.in
+    - debian/copyright: re-generated.
+
+  * Fix generation of emacs21-common README.Debian. [rlb]
+
+ -- Rob Browning <rlb@defaultvalue.org>  Sat,  2 Dec 2006 11:45:44 -0800
+
+emacs21 (21.4a+1-1) unstable; urgency=low
+
+  * In accordance with the recent General Resolution
+    (http://www.debian.org/vote/2006/vote_001), move all non-DFSG files to
+    new packages that will be included in Debian's non-free section.  The
+    debian/dfsg-splitter script has been used to split the upstream
+    archive. (closes: #207932) [rlb]
+    - debian/control.in
+    - debian/copyright.in
+    - debian/dfsg-splitter
+    - debian/emacs-common.README
+    - debian/patches/handle-dfsg-split.diff
+    - debian/patches/series
+    - debian/replacement/yow.lines.uu
+    - debian/rules
+    - debian/missing-file.dfsg: new template file used to generate
+      replacements for non-free files normally accessible through C-h
+      key bindings. Those files will be displayed if the original
+      ones are not available.
+  
+  * Acknowledge NMU. Thanks Marc Brockschmidt <he@debian.org>
+    (Closes: #381452) [Jérôme Marant]
+
+  * Separate mipsel from mips autodetection in configure.in [Jérôme Marant]
+    - debian/patches/arch-mipsel.diff: update.
+  
+  * Split mips and mipsel ports into two separate patches [Jérôme Marant]
+    - debian/patches/arch-mips.diff: new file. Add mips-specific code
+      from arch-mipsel+mips.diff patch
+    - debian/patches/arch-mipsel.diff: add mipsel-specific code from
+      arch-mipsel+mips.diff patch
+    - debian/patches/arch-mipsel+mips.diff: remove.
+
+  * Bump Standards-Version to 3.7.2 [Jérôme Marant]
+    - debian/control.in
+
+  * Add a new dummy `emacs' package which depends on the latest
+    Emacs release (closes: #82687)
+    - debian/control.in: added new entry for `emacs' package.
+    - debian/control: re-generated.
+    - debian/emacs.*: renamed to debian/emacsVER.*
+    - debian/emacs-*.*: renamed to debian/emacsVER-*.*
+    - debian/rules: changed accordingly.
+
+  * Remove erroneous semicolon character when reading XBM files.
+    Thanks to Jochen Voss <voss@debian.org>.
+    (closes: #392651) [Jérôme Marant]
+    - debian/patches/xbm-read-erroneous-semicolon.diff: new file.
+    - debian/patches/series: updated.
+
+  * Properly point to README.Debian.gz from Emacs NEWS file.
+    Thanks to Per Bojsen <per.bojsen@bojsen.us>.
+    (closes: #389063) [Jérôme Marant]
+    - debian/patches/misc-unseparated.diff: updated.
+
+ -- Rob Browning <rlb@defaultvalue.org>  Wed, 25 Oct 2006 00:40:34 -0700
+
+emacs21 (21.4a-6.2) unstable; urgency=low
+
+  * Non-maintainer brown paper bag release.
+  * Apply patch from 21.4a-6.1 properly, somehow quilt hates me. 
+
+ -- Marc 'HE' Brockschmidt <he@debian.org>  Wed, 27 Sep 2006 08:30:33 +0200
+
+emacs21 (21.4a-6.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * debian/patches/arch-mipsel+mips.diff:
+     Add patch from Max Kellermann <max@duempel.org> (updated by
+     Thiemo Seufer <ths@networkno.de>) to fix segfaults on mips
+     and mipsel. Thanks for the hard work! (Closes: #381452)
+
+ -- Marc 'HE' Brockschmidt <he@debian.org>  Wed, 27 Sep 2006 00:13:30 +0200
+
+emacs21 (21.4a-6) unstable; urgency=low
+
+  * When we create an empty aclocal.m4 after patching (to get around
+    quilt's use of patch -E), make the timestamp match the timestamp of
+    configure.in, so that we won't accidentally re-run autoconf given the
+    dependency in Makefile.in. [rlb].
+    - debian/rules
+
+ -- Rob Browning <rlb@defaultvalue.org>  Sun, 14 May 2006 15:24:35 -0700
+
+emacs21 (21.4a-5) unstable; urgency=low
+
+  * Don't include dpatch.make in debian/rules since the package no longer
+    depends on dpatch.  Thanks to Romain Francoise
+    <rfrancoise@debian.org>.  (closes: #367177) [rlb]
+    - debian/rules
+
+ -- Rob Browning <rlb@defaultvalue.org>  Sun, 14 May 2006 10:18:04 -0700
+
+emacs21 (21.4a-4) unstable; urgency=low
+
+  * Migrate from dpatch to quilt and update generation of README. [rlb]
+    - debian/README.in  
+    - debian/rules
+    - debian/control.in
+    - debian/patches/*
+
+  * Change occurrence of "find ... -perm +u+x" to "find ... -perm /u+x".
+    The former is no longer handled the way it used to be, and *doesn't*
+    find all files with execute permission.  Thanks to François Fleuret
+    for pointing out the initial problem.  [rlb]
+    - debian/rules
+
+  * Replace $(pwd) with $(CURDIR) in debian/rules.
+    - debian/rules
+
+  * Remove PACKAGE variable.
+    - debian/rules
+
+  * Arrange DEB_ vars as recommended by
+    /usr/share/doc/autotools-dev/README.Debian.gz and do the same with
+    DEB_HOST_ARCH and DEB_HOST_GNU_CPU. [rlb]
+    - debian/rules
+
+  * Use DEB_HOST_GNU_TYPE for the value of target rather than
+    DEB_BUILD_GNU_TYPE. [rlb]
+    - debian/rules
+
+  * Add $(src_name) and $(flavor) and use them. [rlb]
+    - debian/rules
+
+  * Remove show-upstream-diffs target (use check-diff instead). [rlb]
+    - debian/rules
+
+  * Rename orig_tgz and orig_tgz_dir variables to deb_orig_tgz and
+    deb_orig_tgz_dir. [rlb]
+    - debian/rules
+  
+  * Lowercase local makefile variable names. [rlb]
+    - debian/rules
+
+  * Migrate to debhelper (while consulting Jérôme Marant's work on
+    emacs-snapshot).  There may still be a bit to do. [rlb]
+    - debian/rules
+    - debian/changelog
+    - debian/compat
+    - debian/control
+    - debian/control.in
+    - debian/emacs-bin-common.postinst
+    - debian/emacs-bin-common.postrm
+    - debian/emacs-bin-common.prerm
+    - debian/emacs-common.README
+    - debian/emacs-common.docs
+    - debian/emacs-common.postinst
+    - debian/emacs-common.prerm
+    - debian/emacs-el.prerm
+    - debian/emacs.README
+    - debian/emacs.menu
+    - debian/emacs.postinst
+    - debian/emacs.postrm
+    - debian/emacs.preinst
+    - debian/emacs.prerm
+    - debian/rules
+    - debian/README.binpkg.in (moved to debian/emacs.README)
+    - debian/README.in (moved to debian/emacs-common.README)
+    - debian/build-binary-pkg (removed - now handled in debian/rules)
+    - debian/menu.in (moved to debian/emacs.menu)
+
+  * Change nominal_ver computation to match code in configure.in. [rlb]
+    - debian/rules
+
+  * Add libxaw7-dev dependency to make sure we get that instead of
+    libxaw8-dev.  Thanks to Tollef Fog Heen <tfheen@debian.org>.
+    (closes: #365597) [rlb]
+    - debian/control.in
+
+  * Apply an upstream patch to fix an mmap related Hurd build problem.
+    Thanks to Michael Banck <mbanck@debian.org>. (closes: #347554) [rlb]
+    - debian/patches/series
+    - debian/patches/hurd-mmap.diff
+
+ -- Rob Browning <rlb@defaultvalue.org>  Sat, 13 May 2006 16:24:05 -0700
+
+emacs21 (21.4a-3) unstable; urgency=low
+
+  * Disable support for the ppc64 architecture: the patch breaks the
+    powerpc support and does not work on ppc64 any more anyway.
+    (closes: #329459) [Jérôme Marant]
+    - debian/patches/00list: disable arch-ppc64 patch.
+    - debian/patches/autofiles.dpatch: regenerated.
+
+ -- Rob Browning <rlb@defaultvalue.org>  Sun,  2 Oct 2005 19:00:13 -0700
+
+emacs21 (21.4a-2) unstable; urgency=low
+
+  * Apply patch applying modifiers to multibyte-char keys. Thanks to
+    Martin Stjernholm <mast@lysator.liu.se> (closes: #309963) [Jérôme Marant]
+    - debian/patches/multibyte-char-key-modifiers.dpatch: new file.
+    - debian/00list: updated.
+
+  * Apply patch supporting the ppc64 architecture. This is a slightly
+    modified patch derived from the Emacs CVS mainline.
+    (closes: #300368) [Jérôme Marant]
+    - debian/patches/arch-ppc64.patch: new file.
+    - debian/00list: updated.
+  
+  * Add real dependency as an alternative to the libtiff-dev build
+    dependency in order for the build to be deterministic.
+    (closes: #311074) [Jérôme Marant]
+    - debian/control.in: add libtiff4-dev as alternative libtiff-dev
+      build dependency.
+    - debian/control: regenerated.
+
+  * Bump Standards-Version to 3.6.2. [Jérôme Marant]
+    - debian/control.in
+    - debian/control: regenerated.
+  
+  * Use the "kitchen sink" bitmap icon when iconifying the Emacs window.
+    (closes: #309930) [Jérôme Marant]
+    - debian/menu.in: pass the `-i' option to the command launching Emacs
+      under X11.
+    - debian/emacs.desktop: likewise.
+  
+  * Work around bug in Xorg which makes AltGr incorrectly recognized.
+    This patch has been backported from Emacs CVS trunk. [Jérôme Marant]
+    - debian/patches/xorg-altgr-fix.dpatch: new file.
+    - debian/00list: updated.
+  
+  * Apply patch preventing an infinite loop in whitespace.el if kill-read-only
+    is set to t. Thanks to Romain Francoise <rfrancoise@debian.org>
+    (closes: #273123) [Jérôme Marant]
+    - debian/patches/whitespace-readonly-infloop.dpatch: new file.
+    - debian/00list: updated.
+
+ -- Rob Browning <rlb@defaultvalue.org>  Sat, 17 Sep 2005 23:39:52 -0700
+
+emacs21 (21.4a-1) unstable; urgency=medium
+
+  * New upstream release. (closes: #294313) [Jérôme Marant]
+    - debian/patches/movemail-pop-fmt-vulnerability.dpatch: removed since
+    it has been applied upstream.
+  
+  * Apply patch from Romain Francoise <rfrancoise@debian.org> making PCL-CVS
+    compliant with recent versions of CVS. (closes: #291221) [Jérôme Marant]
+    - debian/patches/pcl-cvs-format.dpatch: new file.
+    - debian/00list: updated.
+    - debian/control: tightened dependency on dpatch (>= 2.0.9).
+  
+  * Add MIME type to desktop file. (closes: #296618) [Jérôme Marant]
+    - debian/emacs.desktop: added MimeType entry.
+  
+  * Apply patch supporting the AMD64 architecture. This is a slightly
+    modified patch derived from the Emacs CVS mainline. Thanks to
+    Goswin von Brederlow <brederlo@informatik.uni-tuebingen.de> and
+    amd64 porters. (closes: #248796) [Jérôme Marant]
+    - debian/patches/arch-amd64.patch: new file.
+    - debian/00list: updated.
+
+  * Hard code leim version in copyright.in for now.  with 21.4a the emacs
+    tar.gz name changed, but the leim archive name didn't. [rlb]
+    - debian/copyright.in
+    - debian/copyright
+
+  * Remove prebuild target from debian/rules.  Instead, just issue
+    instructions to the user. [rlb]
+    - debian/rules
+  
+  * Fix invocation of wc -l when counting fns-*.el files. [rlb]
+    - debian/rules
+
+  * Use dpatch for the autotool related diff rather than generating and
+    applying a diff manually.  What was the debian/autofiles.diff is now
+    handled via debian/patches/autofiles.dpatch.  Also, we no longer try
+    to automatically generate the diff when needed.  Instead, the diff
+    must be generated manually via "debian/rules autofiles-sync".
+  
+    The earlier approach was broken because dpatch files that
+    autofiles.diff depended on could end up later in the Debian diff (and
+    hence have newer timestamps).  This would cause an unexpected run of
+    aclocal, etc.  and break the buildds.  If we ever want to re-automate
+    generation of the autofiles diff, we'll need to use dpatch md5 sigs
+    (or similar) rather than timestamps.  (closes: #297796) [rlb]
+    - debian/autofiles.diff: removed
+    - debian/patches/00list: added autofiles
+    - debian/patches/autofiles.dpatch: new
+    - debian/rules: updated
+  
+ -- Rob Browning <rlb@defaultvalue.org>  Tue, 15 Mar 2005 11:00:04 -0600
+
+emacs21 (21.3+1-9) unstable; urgency=high
+
+  * Modify debian/rules to support using an arch source repository and an
+    archive arrangement somewhat similar to, but not compatible with
+    arch-buildpackage's. [rlb]
+    - debian/rules
+  
+  * Applied patch to fix mailspool pop format string vulnerability
+    (CAN-2005-0100). [rlb]
+    Thanks to Max Vozeler <max@hinterhof.net>.
+    - debian/patches/movemail-pop-fmt-vulnerability.dpatch
+  
+ -- Rob Browning <rlb@defaultvalue.org>  Thu,  3 Feb 2005 21:02:03 -0600
+
+emacs21 (21.3+1-8) unstable; urgency=medium
+
+  * Apply patch allowing Emacs to properly interpret logo keys as Meta
+    rather than Meta+Super+Hyper. This problem has been showing up since
+    latest XFree86 and Xorg introducted `fake keys'.
+    Thanks to Denis Barbier <barbier@linufr.org>
+    (closes: #255286, #274103) [Jérôme Marant]
+    - debian/patches/xfree86-4.3-modifiers.dpatch: new file
+    - debian/patches/00list: updated.
+  
+  * Apply patch fixing long-standing memory leak in decode-coding-region
+    and similar routines. Thanks to Florian Weimer <fw@deneb.enyo.de>.
+    (closes: #273919) [Jérôme Marant]
+    - debian/patches/coding-region-leak.dpatch: new file.
+    - debian/patches/00list: updated.
+
+  * Apply patch tightening permissions of local backup copies of remote
+    files. Thanks to Michael Albinus <michael.albinus@gmx.de>.
+    (closes: #274427) [Jérôme Marant]
+    - debian/patches/remote-files-permissions.dpatch: new file.
+    - debian/patches/00list: updated.
+
+ -- Rob Browning <rlb@defaultvalue.org>  Sat, 16 Oct 2004 11:10:32 -0500
+
+emacs21 (21.3+1-7) unstable; urgency=medium
+
+  * set recompile against libtiff4-dev and upload with
+    urgency=medium. (closes: #262828) [rlb]
+    - debian/changelog
+
+ -- Rob Browning <rlb@defaultvalue.org>  Tue,  3 Aug 2004 11:34:43 -0500
+
+emacs21 (21.3+1-6) unstable; urgency=low
+
+  * fix debian/README rendering problem. [rlb]
+  
+  * Stop provinding www-browser since the w3-el-e21 package provides it
+    now. [Jérôme Marant]
+    - debian/control.in: remove www-browser provides for emacs and
+      emacs-nox.
+    - debian/control: synced.
+
+  * Fixed installation of .desktop entry. [Jérôme Marant]
+    - debian/build-binary-pkg: fixed typo.
+  
+  * Set value of the auto-save-file-name-transforms variable at run-time
+    in order to override its build-time value.
+    (closes: #160615, #167295, #175346, #241826, #250676, #178792)
+    [Jérôme Marant]
+    - debian/patches/startup-auto-save-file-name-transforms.dpatch: new file.
+    - debian/patches/00list: updated.
+  
+  * Add Python byte-compiled file extensions to completion-ignore-extensions
+    variable. (closes: #177276) [Jérôme Marant]
+    - debian/patches/python-completion-ignored-extensions.dpatch: new file.
+    - debian/patches/00list: updated.
+  
+  * Fixed removal of alternatives
+    (closes: #251822, #206901, #241820, #163034) [Jérôme Marant]
+    - debian/emacs-bin-common.prerm
+  
+  * Add a slave alternative for "editor" manpage.
+    Thanks to Daniel Kraft <da_kraft@web.de>. (closes: #255639) [Jérôme Marant]
+    - debian/emacs.postinst
+  
+  * Apply a 2003-06-21 patch from upstream CVS to fix a non-interactive
+    signal handling problem that could cause Emacs to die prematurely as
+    the result of a SIGIO or SIGHUP. (closes: #253887) [rlb]
+    - debian/patches/fix-batch-mode-signal-handling.dpatch
+    - debian/patches/00list
+
+  * Add warning message to prepare-release explaining that you have to run
+    it as a normal user (not root). [rlb]
+    - debian/rules
+
+ -- Rob Browning <rlb@defaultvalue.org>  Mon, 26 Jul 2004 10:27:10 -0500
+
+emacs21 (21.3+1-5) unstable; urgency=low
+
+  * Apply patch allowing emacsclient to handle ALTERNATE_EDITOR properly
+    when the command is run without any parameter [Jérôme Marant]
+    (closes: #219658)
+    - debian/patches/emacsclient-alternate-editor.dpatch: new file.
+
+  * Provide the `editor' virtual package. [Jérôme Marant]
+    (closes: #66243, #90154, #158807) 
+    - debian/control.in: emacs and emacs-nox now provide the `editor'
+      virtual package. 
+    - debian/control: synchronized with debian/control.in.
+    - debian/emacs.postinst: adding an `editor' alternative with a priority
+      of 0 as discussed in
+      http://lists.debian.org/debian-policy/2000/debian-policy-200006/msg00122.html
+    - debian/emacs.prerm: removing the `editor' alternative on package
+      removal.
+
+  * Added automatic switching to UTF-8 encoding when editing the debian
+    changelog file. [Jérôme Marant]
+    - debian/changelog: added Emacs local variables forcing coding
+      to UTF-8.
+
+  * Fix handling of menu entry for text version of Emacs [Jérôme Marant]
+    (closes: #221171)
+    - debian/menu.in: call the text version of emacs with the `-nw'
+      parameter.
+
+  * Install the emacsclient manpage [Jérôme Marant] (closes: #222767) 
+    - debian/build-common-pkg: install missing emacsclient manpage.
+    - debian/emacs-common.postinst: install alternative for emacsclient
+      manpage.
+  
+  * Install .desktop entry in order to make Emacs easy to start in
+    both GNOME and KDE. Thanks to Adam C Powell IV <hazelsct@debian.org>
+    [Jérôme Marant] (closes: #233711)
+    - emacs.desktop: new template file for desktop entries
+    - debian/rules: generate desktop file from emacs.desktop template
+      and install it for emacs21.
+
+  * test -n "${major_ver}" in a few places so that we don't accidentally
+    generate bad output files from our .in files. [rlb]
+    - debian/rules
+
+  * truncate aclocal.m4 during autofiles-sync so that old bits won't kill new
+    autoconf run.  Also ignore autom4te.cache when generating
+    autofiles.diff. [rlb]
+    - debian/rules
+  
+  * fix bug in prepare-release autodiff prompt handling. [rlb]
+    - debian/rules
+
+  * update configure.in for newer autoconf versions. [rlb]
+    - autoconf-updates.dpatch
+
+  * add an emacsXY-bin-common package containing all the architecture
+    specific bits, so that emacsXY-common can be architecture independent.
+    This should save many megabytes * architectures in the debian pool.
+    [rlb] (closes: #232888, #233345)
+    - debian/rules: move some build-* code from debian/ scripts to rules
+      and adjust to build emacsXY-bin-common.
+    - debian/emacs-common.postinst debian/emacs-common.prerm: some code
+      moved to new emacs-bin-common scripts.
+    - debian/emacs-common.postrm: deleted.
+    - debian/emacs-bin-common.postinst: new file.
+    - debian/emacs-bin-common.prerm: new file.
+    - debian/emacs-bin-common.postrm: new file.
+    - debian/build-common-pkg: deleted - code now in debian/rules.
+    - debian/build--pkg: deleted - code now in debian/rules.
+    - debian/emacs-el.postinst: deleted - was empty.
+    - debian/control.in: add emacsXY-bin-common and adjust other entries.
+    - debian/fix-debian-scripts: deleted - no longer used.
+    - debian/build-binary-pkg: adjusted to handle more of the common code.
+  
+  * Add support for linux 2.6 to ACPI in lisp/battery.el. Thanks to
+    Mario Lang <mlang@debian.org> [Jérôme Marant] (closes: #228658)
+    - debian/patches/battery-acpi-support.dpatch: updated.
+  
+  * Generate md5sums file for every package [Jérôme Marant] (closes: #22590)
+    - debian/rules: generate md5sums file just before building packages.
+    - debian/build-binary-pkg: likewise.
+  
+  * no point in byte-compiling fns-*.el according to upstream authors
+    (closes: #189277)
+
+  * fix configure args (--build alone doesn't seem to work anymore). [rlb]
+    - debian/rules
+  
+  * re-enable gif support via libungif. [rlb]
+    - debian/rules
+
+  * re-enable toolkit scrollbars, but make it really easy for people to
+    disable them in debian/rules.  Search for
+    --without-toolkit-scrollbars.  [rlb]
+    - debian/rules
+    - debian/README.in
+
+  * fix problem with upgrades by adding emacs21-common (<< 21.3+1-4) to
+    Replaces for the common packages. [rlb]
+    - debian/control.in
+    - debian/control
+
+ -- Rob Browning <rlb@defaultvalue.org>  Tue,  6 Apr 2004 18:07:38 -0500
+
+emacs21 (21.3+1-4) unstable; urgency=medium
+
+  * debian/changelog: converted to UTF-8 as per Policy. [Jérôme Marant]
+  * debian/control.in:
+    - Bumped Standards-Version to 3.6.1. [Jérôme Marant]
+    - Added versioned build-dependency on dpatch >= 1.23 since this version
+      no longer requires numerial prefixes to dpatches. [Jérôme Marant]
+  * debian/patches/*.dpatch: removed numerical prefix since the patch order
+    is specified in debian/patches/00list. [Jérôme Marant]
+  * debian/patches/hurd-libio-glibc.dpatch: new patch allowing Emacs
+    to be built on Hurd systems using a libio-based glibc.
+    Thanks to Markus Brinkmann <marcus@gnu.org>.
+    (closes: #143220) [Jérôme Marant]
+  * debian/patches/battery-acpi-support.dpatch: new patch adding ACPI
+    support to lisp/battery.el. Thanks to Mario Lang <mlang@debian.org>.
+    (closes: #208812) [Jérôme Marant]
+  * debian/patches/scroll-margin.dpatch: new patch preventing emacs
+    to hang with a non-0 scroll-margin set.
+    (closes: #175658) [Jérôme Marant]
+  * debian/patches/save-buffer.dpatch: new patch fixing a bug which
+    makes a file being removed when the coding system of its buffer
+    has changed and saving the changes was canceled.
+    (closes: #194171) [Jérôme Marant]
+  * debian/patches/00list: updated with respect to new patches.
+    [Jérôme Marant]
+  * debian/menu.in:
+    - Added hints to menu entries. (closes: #144282) [Jérôme Marant]
+    - Changed titles for both text and X11 entries in order to
+      differenciate them. (closes: #197527, #188598) [Jérôme Marant]
+  * debian/patches/browse-url.dpatch:
+    - Updated patch fixing a wrong call to galeon. Thanks to
+      Mikael Hedin <micce@debian.org>. (closes: #208206) [Jérôme Marant]
+    - Updated patch fixing browse-url's invocation of Mozilla.
+      Thanks to Jeff Sheinberg <jeffsh@erols.com>,
+      Martin Pool <mbp@sourcefrog.net> and KATO Kazuyoshi <kzys@users.sf.net>.
+      (closes: #148408, #216067) [Jérôme Marant]
+  * Use -O1 rather than -O2 on m68k.  Fixes a build failure (looks like a
+    broken byte compiler) with newer versions of gcc.  (closes: #207580)
+
+ -- Rob Browning <rlb@defaultvalue.org>  Fri, 31 Oct 2003 00:00:10 -0600
+
+emacs21 (21.3+1-3) unstable; urgency=low
+
+  * create debian/stmap it doesn't exist. (closes: #210802)
+
+ -- Rob Browning <rlb@defaultvalue.org>  Sat, 13 Sep 2003 14:49:18 -0500
+
+emacs21 (21.3+1-2) unstable; urgency=low
+
+  * add back accidentally removed dpatch Build-Depends. (closes: #210627)
+
+ -- Rob Browning <rlb@defaultvalue.org>  Fri, 12 Sep 2003 10:30:21 -0500
+
+emacs21 (21.3+1-1) unstable; urgency=low
+
+  * repackage without .elc files since we regenerate all of them anyway.
+    This will save space, and will also allow us to use dpatch in a
+    straightforward way.
+  * modify debian/rules computation of version numbers to handle
+    (i.e. ignore) the +1 in 21.3+1.
+  * rework to use dpatch and to patch/unpatch the debian source in-place
+    rather than using a debian/build-src copy of the whole source tree.
+  * incorporated patch (500-detect-coding-iso2022.dpatch) to fix raw-text
+    coding problem.  Thanks to Kenichi Handa <handa@etl.go.jp>.
+    (closes: #198736)
+
+ -- Rob Browning <rlb@defaultvalue.org>  Thu, 11 Sep 2003 23:15:44 -0500
+
+emacs21 (21.3-2) unstable; urgency=low
+
+  * Compile --without-toolkit-scroll-bars for now (my pref, and to avoid
+    xaw3d issues for the moment).
+  * Update copyright to reflect documentation licenses. (closes: #161500)
+
+ -- Rob Browning <rlb@defaultvalue.org>  Wed, 13 Aug 2003 08:53:35 -0500
+
+emacs21 (21.3-1) unstable; urgency=low
+
+  * new upstream version.
+
+ -- Rob Browning <rlb@defaultvalue.org>  Wed, 23 Apr 2003 13:16:06 -0500
+
+emacs21 (21.2-6) unstable; urgency=low
+
+  * changed sort behavior for x-vs-no-x fix in cus-dep.el based on
+    suggestion from Matt Kraai <kraai@alumni.cmu.edu>. (closes: #166139)
+  * finish breaking up most of the debian/patch/* files.
+  * set up automatic generation for autofiles.diff which contains all the
+    diffs to automatically generated files and is applied after all of the
+    debian/patch/*.diff files.
+  * add an apply-patches-upto command so it's easier to create partially
+    patched trees for editing.
+
+ -- Rob Browning <rlb@defaultvalue.org>  Thu,  6 Feb 2003 18:12:41 -0600
+
+emacs21 (21.2-5) unstable; urgency=low
+
+  * fix bug in rules and binary-pkg generation. (closes: #164770)
+  * fix problem with config.sub and config.guess updates. (closes: #164763)
+  * time to stop creating the /usr/doc symlinks...
+
+ -- Rob Browning <rlb@defaultvalue.org>  Tue, 15 Oct 2002 16:34:52 -0500
+
+emacs21 (21.2-4) unstable; urgency=low
+
+  * create debian/patches/ and start migrating to represent
+    changes as patches against the upstream source.  Don't edit the main
+    tree anymore.
+  * rework tree and packaging to have emacs21-common, emacs21, and
+    emacs21-nox packages with emacs21-common containing nearly all the
+    data.
+
+ -- Rob Browning <rlb@defaultvalue.org>  Sat, 12 Oct 2002 15:09:37 -0500
+
+emacs21 (21.2-3) unstable; urgency=low
+
+  * Update emacs21-nox package description.
+
+ -- Rob Browning <rlb@defaultvalue.org>  Wed, 29 May 2002 14:04:57 -0500
+
+emacs21 (21.2-2) unstable; urgency=low
+
+  * fix control file priorities to match overrides.
+  * fix rules to handle autotools more correctly.  See
+    /usr/share/doc/autotools-dev/README.Debian.gz for details.
+    (closes: #139998)
+  * firewall, headless box, and anti-X users everywhere rejoice!
+    Introducing emacs21-nox package :>
+
+ -- Rob Browning <rlb@defaultvalue.org>  Tue, 28 May 2002 12:09:48 -0500
+
+emacs21 (21.2-1) unstable; urgency=low
+
+  * new upstream release.
+  * move outline of Debian specific Emacs changes to
+    /usr/share/doc/*/README.Debian.gz.x
+
+ -- Rob Browning <rlb@defaultvalue.org>  Fri, 22 Mar 2002 11:41:17 -0600
+
+emacs21 (21.1-9) unstable; urgency=low
+
+  * fix control.in to use ${Source-Version}. (closes: #138994)
+
+ -- Rob Browning <rlb@defaultvalue.org>  Mon, 18 Mar 2002 21:54:47 -0600
+
+emacs21 (21.1-8) unstable; urgency=low
+
+  * Fix .texi problems with upstream patch. (closes: #138236)
+
+ -- Rob Browning <rlb@defaultvalue.org>  Sun, 17 Mar 2002 11:58:59 -0600
+
+emacs21 (21.1-7) unstable; urgency=high
+
+  * fix vc-path to be correct for a Debian system. (closes: #120079)
+  * re-add lost hppa and s390 patches. (closes: #107251)
+
+ -- Rob Browning <rlb@defaultvalue.org>  Thu,  6 Dec 2001 14:10:45 -0600
+
+emacs21 (21.1-6) unstable; urgency=medium
+
+  * modify order in browse-url.el.
+  * added upstream iso-acc.el patch to fix accent bug. (closes: #119852)
+  * fix ppc nocombreloc bug with upstream patch. (closes: #117557)
+
+ -- Rob Browning <rlb@defaultvalue.org>  Tue,  4 Dec 2001 08:43:38 -0600
+
+emacs21 (21.1-5) unstable; urgency=low
+
+  * Run autoconf to remove stale ppc code. (closes: #119189)
+  * Write new browse-url.el code with support for galeon and to default to
+    searching for a suitable browser, free browsers first.  (closes: #116822)
+
+ -- Rob Browning <rlb@defaultvalue.org>  Tue, 13 Nov 2001 09:51:31 -0600
+
+emacs21 (21.1-4) unstable; urgency=low
+
+  * Really fix alternatives problem this time.
+
+ -- Rob Browning <rlb@defaultvalue.org>  Fri,  9 Nov 2001 10:24:49 -0600
+
+emacs21 (21.1-3) unstable; urgency=low
+
+  * Fix but in grep in postinst. (closes: #117251, #117256, #117415, #118792)
+  * Remove vestigal ppc bits and add upstream patch for ppc nocombreloc
+    problem. (closes: #117557)
+  * fix bug in upstream-files.tar handling.
+  * don't configure gif support until our libungif is new enough.  See bug
+    #117729.
+  * Fix manpage to list correct default window size. (closes: #118641)
+
+ -- Rob Browning <rlb@defaultvalue.org>  Thu,  8 Nov 2001 21:15:20 -0600
+
+emacs21 (21.1-2) unstable; urgency=low
+
+  * change to priority optional.
+  * use xaw3d scrollbars after checking upstream preferences.
+    (closes: #116831, #116911, #116638)
+  * added some build-depends. (closes: #116981)
+  * fixed typo in NEWS. (closes: #116814)
+  * fixed alternatives bug in postinst/prerm for emacsclient (closes: #116915)
+
+ -- Rob Browning <rlb@defaultvalue.org>  Thu, 25 Oct 2001 16:02:45 -0500
+
+emacs21 (21.1-1) unstable; urgency=low
+
+  * New emacs21 packages.  Many changes -- reviewed all Debian files.
+
+ -- Rob Browning <rlb@defaultvalue.org>  Thu, 18 Oct 2001 17:28:03 -0500
+
+emacs20 (20.7-10) unstable; urgency=medium
+
+  * Add arch header for mipsel and fix configure.in and
+    configure. (closes: #103959)
+
+ -- Rob Browning <rlb@defaultvalue.org>  Mon, 23 Jul 2001 09:23:06 -0500
+
+emacs20 (20.7-9) unstable; urgency=low
+
+  * Added more Build-Depends. (closes: #101832)
+  * Disable ralloc on Hurd.  Thanks to Robert Bihlmeyer
+    <robbe@orcus.priv.at>. (closes: #101926)
+
+ -- Rob Browning <rlb@defaultvalue.org>  Tue, 10 Jul 2001 12:48:22 -0500
+
+emacs20 (20.7-8) unstable; urgency=low
+
+  * Added ia64 patches from Bdale Garbee <bdale@gag.com> for ia64.h.
+    (closes: #90518)
+  * Added Build-Depends on mailx for now (though this is *wrong* for the
+    long run -- I need to fix my fakemail handling).
+    (closes: #95903, #96761)
+  * Fix fakeroot sgid problem (move movemail chmod +s in debian/rules).
+  * Remove emacs' overzealous dir.gz file.
+  * Shrink gnu.xpm to 32x32 and make it the menu icon. (closes: #20253, #21310)
+  * Update manpage to not refer to kitchen sink anymore -- though with
+    emacs21, we're going to move back to using whatever they choose.
+    (closes: #81682)
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Wed, 13 Jun 2001 23:56:16 -0500
+
+emacs20 (20.7-7) unstable; urgency=low
+
+  * Fixed reftex-info problem. (closes: #44837).
+  * Fix install-strip target in Makefile.in.  Thanks to 
+    Kalle Olavi Niemitalo <tosi@ees2.oulu.fi>.  (closes: #51348)
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Sat,  5 May 2001 23:50:50 -0500
+
+emacs20 (20.7-6) unstable; urgency=low
+
+  * Fix improper usage of dpkg-statoverride and make sure movemail is set
+    up right. (closes: #95953)
+  * Fix bad manpage location in postinst update-alternatives call.
+  * Fix bad .so in ctags manpage (closes: #88231, #45317, #65017, #74570)
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Sat,  5 May 2001 09:47:40 -0500
+
+emacs20 (20.7-5) unstable; urgency=low
+
+  * configure.in: add detection of CONF_MAIL_PROGRAM_NAME.
+  * lib-src/fakemail.c: use CONF_MAIL_PROGRAM_NAME when appropriate
+    (closes: #72103) -- need to forward upstream.
+  * Add "modified by Debian" clause to (emacs-version) at RMS's request.
+  * Start Debian modifications section in copyright file as per policy.
+  * Add build fixes for hurd (closes: #78461).  Changes suggested by
+    Marcus.Brinkmann@ruhr-uni-bochum.de.  Thanks.
+  * Switch from Debian sendmail.el hack to Francesco's suggestion of
+    setting mail-from-style to 'system-default by default at startup
+    (closes: #35128).  This allows the user to override when desired in
+    the normal way.  This should be discussed with the upstream
+    maintainers.  They may be amenable to making this the default on
+    Debian systems.
+  * add dependency on dpkg (>= 1.9.0) for new install-info.
+  * info pages should finally work right (or at least closer to right).
+    They're now installed in /usr/share/info/emacs-20/ under their normal
+    names, and install-info can add the appropriate (emacs-20/emacs),
+    etc. entries to /usr/share/info/dir.  This hopefully closes a bunch of
+    old bugs.
+    (closes: #64994, #64512, #64025, #62155, #59332, #51163, #40443)
+  * No more files in /usr/doc. (closes: #91454, #63768)
+  * /usr/man moved to /usr/share/man. (closes: #91149)
+  * This should be fixed, in addition we've switched to dpkg-statoverride
+    (closes: #73007)
+  * /usr/share/info/dir.gz should be gone.
+    (closes: #75594, #68551, #65012)
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Sun, 29 Apr 2001 22:03:33 -0500
+
+emacs20 (20.7-4) unstable frozen; urgency=low
+
+  * Upload to unstable *and* frozen since this fixes outstanding grave
+    bugs.
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Thu, 27 Jul 2000 16:21:15 -0500
+
+emacs20 (20.7-3) unstable; urgency=low
+
+  * Change code to rebuild *all* the install tree .elc files at build
+    time.  This should fix the grave problems with gnus trashing mail at
+    the expense of more CPU at build time.
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Wed, 19 Jul 2000 20:27:27 -0500
+
+emacs20 (20.7-2) frozen unstable; urgency=low
+
+  * Revert to setting debian-emacs-flavor in startup.el as per recent
+    flip-flop in debian-emacs-policy :<  This was a *tiny* source change,
+    and definitely has to go into frozen - too much breaks otherwise.
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Tue, 20 Jun 2000 11:31:29 -0500
+
+emacs20 (20.7-1) frozen unstable; urgency=low
+
+  * New upstream bug-fix version.  Fixes security bugs, among others.
+  * Removed some now redundant Debian patches.
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Sat, 17 Jun 2000 12:59:48 -0500
+
+emacs20 (20.6-3) unstable frozen; urgency=medium
+
+  * Temp fix for alpha corruption problem in cm/src.h
+    src/termcap.c, src/terminfo.c, and src/sysdep.c (forwarded bug 63993).
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Mon, 12 Jun 2000 18:55:22 -0500
+
+emacs20 (20.6-2) frozen unstable; urgency=low
+
+  * Make sure info files get registered after /usr/share migration.
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Fri, 12 May 2000 15:30:02 -0500
+
+emacs20 (20.6-1) frozen unstable; urgency=low
+
+  * Let emacsen-common handle setting debian-emacs-flavor and modify
+    "Depends:" accordingly.
+  * Maintainer release of 20.6 - fixes same issues as 20.6-0.1, so it
+    should go into frozen.
+  * Move info files to /usr/share/info.
+  * Make sure .elc files for .el files we've modified are *always* rebuilt.
+  * Add new unexelf.c from Gerd Moellmann <gerd@gnu.org>.  Without this,
+    emacs20 will *not* build on either frozen or unstable x86 machines.
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Fri, 12 May 2000 11:00:33 -0500
+
+emacs20 (20.6-0.1) frozen unstable; urgency=low
+
+  * Non-maintainer release.
+  * New upstream bug fix release (closes:#60931).
+  * ARM support merged upstream.
+  * Add security patches from RUS-CERT posting on BugTraq.
+  * postinst: Use 2775 as directory permissions in /usr/local (closes:#59919)
+
+ -- Joel Klecker <espy@debian.org>  Wed, 26 Apr 2000 11:26:28 -0700
+
+emacs20 (20.5a-2) unstable; urgency=low
+
+  * Check in a bogus modification to all the .el files that we modified
+    before 20.5a so that new .elc files with our changes will be generated
+    when we build.  This must be done every time an upstream change is
+    merged in.
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Tue, 28 Dec 1999 19:51:14 -0600
+
+emacs20 (20.5a-1) unstable; urgency=high
+
+  * Upstream version number is just fine (20.5a *is* newer than 20.5).
+    Switch to use it.
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Wed, 22 Dec 1999 11:12:44 -0600
+
+emacs20 (20.4.pre20.5a-1) unstable; urgency=high
+
+  * New upstream version, including some Y2K fixes.
+  * Use weird version to avoid epochs.  This is upstream 20.5a.
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Wed, 22 Dec 1999 00:16:52 -0600
+
+emacs20 (20.4-3) unstable; urgency=low
+
+  * Fix mistake in this file.  Fix bug number in architecture
+    dependency "closes" in last revision.
+  * Powerpc configure.in patch from Susumu OSAWA <susumuo@debian.org>.
+    (Should close bug 48997, but marked forwarded instead until patch is
+    resolved upstream.)
+  * Jargon problems apparently fixed. (closes: #31103 #37030)
+  * Gnus printing problems apparently fixed (closes: #20760)
+  * Fix manpage to refer to more accurate Debian file locations.
+    (closes: #35267)
+  * cperl-mode problem apparently fixed. (closes: #46739)
+  * Fix build stripping problem (use INSTALL_STRIP=-s rather than
+    INSTALL_PROGRAM="install -s").
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Sat,  4 Dec 1999 19:24:07 -0600
+
+emacs20 (20.4-2) unstable; urgency=low
+
+  * Modify mail-spool-directory/movemail patch in preparation for upstream
+    inclusion.
+  * Fix architecture dependency. (closes: #48997)
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Fri, 12 Nov 1999 17:59:01 -0600
+
+emacs20 (20.4-1) unstable; urgency=low
+
+  * New upstream version.
+  * I decided to go ahead and get this out without the major overhaul
+    that's coming, but I'm going to be working more tightly the core
+    upstream developers from now on, so there will be some more
+    substantial changes soon, including getting rid of more Debianisms and
+    double checking all our current patches.
+  * Fix movemail liblockfile detection to be non-Debian specific
+    (currently working out the appropriate upstream patch (see etc/NEWS)).
+  * Fix emacs to support a --with-mail-spool-directory configure option and to
+    automagically detect the right answer most of the time without it
+    (currently working out the appropriate upstream patch (see etc/NEWS)).
+  * Add the lisp-level variable mail-spool-directory which always contains
+    the location of the mail spool, and hack movemail, nnmail, rmail, and
+    friends to use it (currently working out the appropriate upstream
+    patch (see etc/NEWS)) .
+  * hexl-mode bug fixed upstream. (closes: #21762)
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Sat, 30 Oct 1999 13:24:39 -0500
+
+emacs20 (20.3-11) unstable; urgency=low
+
+  * Fix liblockfile version skew. (closes: #43803 #45123)
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Thu, 23 Sep 1999 13:27:00 -0500
+
+emacs20 (20.3-10) unstable; urgency=low
+
+  * Restructure debian/rules to build -el in binary-indep
+    (closes: #26761)
+  * Add emacsclient.1 manpage submitted ages ago. (closes: #22463)
+  * Handle duplicate DOC files (closes: #27668)
+  * Switch to gnu icon from old B&W drippy sink (closes: #33260)
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Tue,  6 Jul 1999 23:21:44 -0500
+
+emacs20 (20.3-9) unstable; urgency=low
+
+  * Added HURD patch from Marcus Brinkmann <brinkmd@debian.org>.
+    (closes: #38571).
+  * Backed out (global-set-key [delete] 'delete-char) modification 
+    (Ref: #26366).  This is too controversial (think cross-platform)
+    and needs to be resolved by the Debian Keyboard Czar in concert with
+    others.  For now we revert to the upstream behavior...
+  * Add /usr/share/info to info search path (closes: #38285).
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Fri, 11 Jun 1999 00:43:51 -0500
+
+emacs20 (20.3-8) unstable; urgency=low
+
+  * Added patch to emacs.c from Wolfram Gloger
+    <wmglo@dent.med.uni-muenchen.de> to fix exit segfaults.
+    (closes: #37745)
+  * Fixed suidregister inconsistency between postinst and postrm
+    (closes #36845)
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Sun, 30 May 1999 14:38:51 -0500
+
+emacs20 (20.3-7) unstable frozen; urgency=low
+
+  * Needed to go to frozen too: --print-architecture was an important
+    bug.  Should be OK since other fixes since -5 are minor and
+    important.
+  * Add conflict with w3-el (as per Ben Pfaff's <pfaffben@pilot.msu.edu>
+    request). (closes: #30413).
+  * Undo broken (and unneeded) "fix" for suidregister call in postrm.
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Thu, 28 Jan 1999 14:49:27 -0600
+
+emacs20 (20.3-6) unstable; urgency=low
+
+  * Use --print-installation-architecture rather than --print-architecture
+    (closes: #28177).
+  * Remove "#undef SIGIO" from m/arm.h as indicated by David Welton
+    <davidw@debian.org> (closes: #31279).
+  * Fix call to suidunregister (I didn't realize that it can't take
+    multiple file arguments) (closes: #21243 #26886).
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Wed, 27 Jan 1999 11:50:14 -0600
+
+emacs20 (20.3-5) frozen unstable; urgency=low
+
+  * Added NetWinder patches (closes: #28277).  (Thanks to David Welton)
+  * Rebuilt emacs20-el so the versions coincide.  In the future, people
+    need to be sure to build *both* binary packages when doing a
+    non-maintainer binary release.  (This fix justifies inclusion into
+    frozen).
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Sun,  1 Nov 1998 20:14:36 -0600
+
+emacs20 (20.3-4) unstable; urgency=low
+
+  * Fix gnus to default to /var/spool/mail rather than /usr/spool/mail for
+    mailbox locations (closes: #21364).
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Sat, 17 Oct 1998 14:28:45 -0500
+
+emacs20 (20.3-3) unstable; urgency=low
+
+  * Fixed leim.  All the input methods should work now (closes: #27398).
+  * Made (global-set-key [delete] 'delete-char) the default (closes: #26366).
+  * Fix ownership on emacs20-el files (closes: #27398).
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Tue, 13 Oct 1998 16:57:51 -0500
+
+emacs20 (20.3-2) unstable; urgency=low
+
+  * Added 20.2 patches for powerpc.  I omitted the patches to the
+    following files because it looks like equivalent fixes have already
+    made it into 20.3.  If anyone who understands that code better knows
+    differently, please let me know.  The rest of the patches applied
+    cleanly.
+      src/callproc.c.rej
+      src/dired.c.rej
+      src/fileio.c.rej
+      src/process.c.rej
+      src/regex.c.rej
+    I also modified src/m/powerpc.h to fix problems calling the ldscript.
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Mon,  7 Sep 1998 18:20:41 -0500
+
+emacs20 (20.3-1) unstable; urgency=low
+
+  * New upstream version.
+  * Modify all the debian/* stuff to automatically track version changes.
+  * Major changes to info page handling.  Emacs20 info is now integrated into
+    the main info page.  This was the best way I could think of to handle
+    cross references, etc. without major source changes.
+  * Locked emacs20-el and emacs20 package versions together with dependencies.
+  * Add info direntries for widget, info, and customize.
+  * Fix handling of /usr/local/share (which was badly broken).
+  * Turn stripping back on.  It appears to work.
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Tue,  1 Sep 1998 11:44:04 -0500
+
+emacs20 (20.2-9) unstable; urgency=low
+
+  * Fixes for leim problems (closes: #25536).  Thanks to
+    Junio Hamano <junio@twinsun.com>
+  * update-elc now made executable (closes: #25899).  Thanks to
+    Junio Hamano <junio@twinsun.com>
+  * Fix problem with package including dirs in /usr/local/share
+    (closes: #23431).
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Sat, 22 Aug 1998 11:45:16 -0500
+
+emacs20 (20.2-8) unstable; urgency=low
+
+  * Regenerate .elc files for .el files we've modified.  I didn't realize
+    that some of the .elc files were in the upstream tar file.  Hope this
+    doesn't break anything.  We haven't been using our sendmail and
+    message modifications until now.  (closes: #21079).
+  * Fix i386ism in debian scripts use "dpkg --print-architecture"
+    instead. (closes: #20548).
+  * Fixed reference in README.add-on-package-maintainers
+    (closes: #23445)
+  * Fix some alpha problems (closes: #21834).
+  * Had to add Replaces: emacs20 to emacs20-el to fix problem with
+    copyright files being in the wrong package (closes: #21531).
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Fri,  7 Aug 1998 20:39:59 -0500
+
+emacs20 (20.2-7) frozen unstable; urgency=low
+
+  * Changed emacs20-el from standard to optional.
+  * Fixed broken postrm (release critical) (closes: #24236)
+  * Don't strip emacs binary (strip is broken see binutils #23153).
+  * Since we can't strip, don't compile or link with "-g".
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Thu, 16 Jul 1998 16:58:04 -0500
+
+emacs20 (20.2-6) frozen unstable; urgency=low
+
+  * Gack.  Fix reject due to changed .tar.gz file (./leim added to tar).
+       
+ -- Rob Browning <rlb@cs.utexas.edu>  Wed,  8 Apr 1998 14:04:54 -0500
+
+emacs20 (20.2-5) frozen unstable; urgency=low
+
+  * Make sure to preserve timestamps on .el files in emacs20-el
+    (closes: #20274)
+  * Add leim support for alternate input methods.  May close several
+    bugs.
+       
+ -- Rob Browning <rlb@cs.utexas.edu>  Sun,  5 Apr 1998 10:38:20 -0500
+
+emacs20 (20.2-4) frozen unstable; urgency=low
+
+  * Added copright file to emacs20-el package (closes: #19300)
+  * suidmanager doesn't understand symbolic perms
+    (closes: #18448, #19213)
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Fri, 13 Mar 1998 13:01:07 -0600
+
+emacs20 (20.2-3) unstable; urgency=low
+
+  * Fixed problem with permissions on /usr/share/emacs/20.2/site-lisp/
+    (closes: #18717)
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Mon,  2 Mar 1998 12:02:33 -0600
+
+emacs20 (20.2-2) unstable; urgency=low
+
+  * fixed bad menu line (closes: #18362).
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Thu, 19 Feb 1998 10:52:58 -0600
+
+emacs20 (20.2-2) unstable; urgency=low
+
+  * Explicit dependency on liblockfile0 until bug is fixed
+    (closes #18186)
+  * added lisp/site-lisp.el to fix info path problem (closes #18190)
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Sat, 14 Feb 1998 19:19:09 -0600
+
+emacs20 (20.2-1) unstable; urgency=low
+
+  * movemail no longer suid -- not needed.
+  * start from scratch with emacs-20.2 source and old emacs-19.34 and
+    xemacs patches.
+
+ -- Rob Browning <rlb@cs.utexas.edu>  Tue, 16 Dec 1997 01:20:27 -0600
+
+Local Variables:
+coding: utf-8
+End:
diff --git a/debian/compat b/debian/compat
new file mode 100644 (file)
index 0000000..b8626c4
--- /dev/null
@@ -0,0 +1 @@
+4
diff --git a/debian/control b/debian/control
new file mode 100644 (file)
index 0000000..b14bc59
--- /dev/null
@@ -0,0 +1,88 @@
+Source: emacs22
+Section: editors
+Priority: optional
+Maintainer: Rob Browning <rlb@defaultvalue.org>
+Uploaders: Jerome Marant <jerome@debian.org>
+Build-Depends: mailx, libncurses5-dev, texinfo, liblockfile-dev, libungif4-dev, libtiff4-dev | libtiff-dev, xaw3dg-dev, libpng3-dev, libjpeg62-dev, autotools-dev, dpkg-dev (>> 1.10.0), quilt, debhelper (>= 4), libxaw7-dev, sharutils, imagemagick, libgtk2.0-dev
+Standards-Version: 3.7.2
+
+Package: emacs
+Section: editors
+Priority: optional
+Architecture: all
+Depends: emacs22 | emacs22-gtk | emacs22-nox
+Provides: emacsen, editor, info-browser, mail-reader, news-reader
+Description: The GNU Emacs editor (metapackage)
+ GNU Emacs is the extensible self-documenting text editor.
+ This is a metapackage which will always depend on the latest Emacs
+ release.
+
+Package: emacs22
+Section: editors
+Priority: optional
+Architecture: any
+Depends: emacs22-bin-common (= ${Source-Version}), ${shlibs:Depends}
+Provides: emacsen, editor, info-browser, mail-reader, news-reader
+Suggests: emacs22-common-non-dfsg
+Conflicts: emacs22-nox, emacs22-gtk, w3-el
+Replaces: emacs22-nox, emacs22-gtk
+Description: The GNU Emacs editor
+ GNU Emacs is the extensible self-documenting text editor.
+
+Package: emacs22-nox
+Section: editors
+Priority: optional
+Architecture: any
+Depends: emacs22-bin-common (= ${Source-Version}), ${shlibs:Depends}
+Provides: emacs22, editor, emacsen, info-browser, mail-reader, news-reader
+Suggests: emacs22-common-non-dfsg
+Conflicts: emacs22, emacs22-gtk, w3-el
+Replaces: emacs22, emacs22-gtk
+Description: The GNU Emacs editor (without X support)
+ GNU Emacs is the extensible self-documenting text editor.
+ This package contains a version of Emacs compiled without support for X.
+
+Package: emacs22-gtk
+Section: editors
+Priority: optional
+Architecture: any
+Depends: emacs22-bin-common (= ${Source-Version}), ${shlibs:Depends}
+Provides: emacs22, editor, emacsen, info-browser, mail-reader, news-reader
+Suggests: emacs22-common-non-dfsg
+Conflicts: emacs22, emacs22-nox, w3-el
+Replaces: emacs22, emacs22-nox
+Description: The GNU Emacs editor (with GTK user interface)
+ GNU Emacs is the extensible self-documenting text editor.
+ This package contains a version of Emacs with a GTK user interface.
+
+Package: emacs22-bin-common
+Section: editors
+Priority: optional
+Architecture: any
+Depends: emacs22-common (= ${Source-Version}), ${shlibs:Depends}
+Description: The GNU Emacs editor's shared, architecture dependent files
+ GNU Emacs is the extensible self-documenting text editor.
+ This package contains the architecture dependent infrastructure
+ that's shared by emacs22, emacs22-gtk, and emacs22-nox.
+
+Package: emacs22-common
+Section: editors
+Priority: optional
+Architecture: all
+Depends: emacsen-common (>= 1.4.10), dpkg (>= 1.9.0), ${shlibs:Depends}
+Suggests: emacs22-el, emacs22-common-non-dfsg
+Conflicts: emacs22-el (<< ${Source-Version}), w3-el
+Description: The GNU Emacs editor's shared, architecture independent infrastructure
+ GNU Emacs is the extensible self-documenting text editor.
+ This package contains the architecture independent infrastructure
+ that's shared by emacs22, emacs22-gtk, and emacs22-nox.
+
+Package: emacs22-el
+Section: editors
+Priority: optional
+Architecture: all
+Depends: emacs22-common (= ${Source-Version})
+Description: GNU Emacs LISP (.el) files
+ GNU Emacs is the extensible self-documenting text editor.
+ This package contains the elisp sources for the convenience of users,
+ saving space in the main package for small systems.
diff --git a/debian/control.in b/debian/control.in
new file mode 100644 (file)
index 0000000..d11814f
--- /dev/null
@@ -0,0 +1,88 @@
+Source: @DEB_FLAVOR@
+Section: editors
+Priority: optional
+Maintainer: Rob Browning <rlb@defaultvalue.org>
+Uploaders: Jerome Marant <jerome@debian.org>
+Build-Depends: mailx, libncurses5-dev, texinfo, liblockfile-dev, libungif4-dev, libtiff4-dev | libtiff-dev, xaw3dg-dev, libpng3-dev, libjpeg62-dev, autotools-dev, dpkg-dev (>> 1.10.0), quilt, debhelper (>= 4), libxaw7-dev, sharutils, imagemagick, libgtk2.0-dev
+Standards-Version: 3.7.2
+
+Package: emacs
+Section: editors
+Priority: optional
+Architecture: all
+Depends: @DEB_FLAVOR@ | @DEB_FLAVOR@-gtk | @DEB_FLAVOR@-nox
+Provides: emacsen, editor, info-browser, mail-reader, news-reader
+Description: The GNU Emacs editor (metapackage)
+ GNU Emacs is the extensible self-documenting text editor.
+ This is a metapackage which will always depend on the latest Emacs
+ release.
+
+Package: @DEB_FLAVOR@
+Section: editors
+Priority: optional
+Architecture: any
+Depends: @DEB_FLAVOR@-bin-common (= ${Source-Version}), ${shlibs:Depends}
+Provides: emacsen, editor, info-browser, mail-reader, news-reader
+Suggests: @DEB_FLAVOR@-common-non-dfsg
+Conflicts: @DEB_FLAVOR@-nox, @DEB_FLAVOR@-gtk, w3-el
+Replaces: @DEB_FLAVOR@-nox, @DEB_FLAVOR@-gtk
+Description: The GNU Emacs editor
+ GNU Emacs is the extensible self-documenting text editor.
+
+Package: @DEB_FLAVOR@-nox
+Section: editors
+Priority: optional
+Architecture: any
+Depends: @DEB_FLAVOR@-bin-common (= ${Source-Version}), ${shlibs:Depends}
+Provides: @DEB_FLAVOR@, editor, emacsen, info-browser, mail-reader, news-reader
+Suggests: @DEB_FLAVOR@-common-non-dfsg
+Conflicts: @DEB_FLAVOR@, @DEB_FLAVOR@-gtk, w3-el
+Replaces: @DEB_FLAVOR@, @DEB_FLAVOR@-gtk
+Description: The GNU Emacs editor (without X support)
+ GNU Emacs is the extensible self-documenting text editor.
+ This package contains a version of Emacs compiled without support for X.
+
+Package: @DEB_FLAVOR@-gtk
+Section: editors
+Priority: optional
+Architecture: any
+Depends: @DEB_FLAVOR@-bin-common (= ${Source-Version}), ${shlibs:Depends}
+Provides: @DEB_FLAVOR@, editor, emacsen, info-browser, mail-reader, news-reader
+Suggests: @DEB_FLAVOR@-common-non-dfsg
+Conflicts: @DEB_FLAVOR@, @DEB_FLAVOR@-nox, w3-el
+Replaces: @DEB_FLAVOR@, @DEB_FLAVOR@-nox
+Description: The GNU Emacs editor (with GTK user interface)
+ GNU Emacs is the extensible self-documenting text editor.
+ This package contains a version of Emacs with a GTK user interface.
+
+Package: @DEB_FLAVOR@-bin-common
+Section: editors
+Priority: optional
+Architecture: any
+Depends: @DEB_FLAVOR@-common (= ${Source-Version}), ${shlibs:Depends}
+Description: The GNU Emacs editor's shared, architecture dependent files
+ GNU Emacs is the extensible self-documenting text editor.
+ This package contains the architecture dependent infrastructure
+ that's shared by @DEB_FLAVOR@, @DEB_FLAVOR@-gtk, and @DEB_FLAVOR@-nox.
+
+Package: @DEB_FLAVOR@-common
+Section: editors
+Priority: optional
+Architecture: all
+Depends: emacsen-common (>= 1.4.10), dpkg (>= 1.9.0), ${shlibs:Depends}
+Suggests: @DEB_FLAVOR@-el, @DEB_FLAVOR@-common-non-dfsg
+Conflicts: @DEB_FLAVOR@-el (<< ${Source-Version}), w3-el
+Description: The GNU Emacs editor's shared, architecture independent infrastructure
+ GNU Emacs is the extensible self-documenting text editor.
+ This package contains the architecture independent infrastructure
+ that's shared by @DEB_FLAVOR@, @DEB_FLAVOR@-gtk, and @DEB_FLAVOR@-nox.
+
+Package: @DEB_FLAVOR@-el
+Section: editors
+Priority: optional
+Architecture: all
+Depends: @DEB_FLAVOR@-common (= ${Source-Version})
+Description: GNU Emacs LISP (.el) files
+ GNU Emacs is the extensible self-documenting text editor.
+ This package contains the elisp sources for the convenience of users,
+ saving space in the main package for small systems.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644 (file)
index 0000000..c94fe0b
--- /dev/null
@@ -0,0 +1,125 @@
+-*-text-*-
+
+This package was debianized by Rob Browning <rlb@defaultvalue.org> on
+Tue, 16 Dec 1997 00:05:45 -0600.
+
+This is the original source archive:
+
+  prep.ai.mit.edu:/pub/gnu/emacs/emacs-22.0.99.tar.gz
+
+Please see /usr/share/doc/emacs22-common/README.Debian.gz for a
+description of the Debian specific differences from the upstream
+version.
+
+As mentioned there, some files (including some of the Emacs
+documentation) have been removed from this package because their
+licenses do not appear to satisfy the requirements of the Debian Free
+Software Guidelines (DFSG).  See http://www.debian.org/social_contract.
+
+In particular, some of the info pages are covered under the GNU Free
+Documentation License (GFDL), which Debian has decided does not
+satisfy the DFSG in cases where "Invariant Sections" are specified
+(this includes front and back cover texts).  See this Debian General
+Resolution on the topic: http://www.debian.org/vote/2006/vote_001.
+
+Some other files have been removed because their license only allows
+verbatim copying, or because there was some other question.
+
+Copyright:
+
+  Emacs itself is licensed under the terms of the GNU General Public
+  License (GPL).  See the file /usr/share/common-licenses/GPL for more
+  information.
+
+  etc/eterm.1 is licensed as follows:
+
+      Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+      Free Software Foundation, Inc.
+
+      Permission is granted to make and distribute verbatim copies of
+      this document provided the copyright notice and this permission
+      notice are preserved on all copies.
+
+      Permission is granted to copy and distribute modified versions
+      of this document under the conditions for verbatim copying,
+      provided that the entire resulting derived work is distributed
+      under the terms of a permission notice identical to this one.
+
+      Permission is granted to copy and distribute translations of
+      this document into another language, under the above conditions
+      for modified versions, except that this permission notice may be
+      stated in a translation approved by the Free Software
+      Foundation.
+
+  etc/emacs.1 is licensed as follows:
+
+      Copyright (C) 1995, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+      2006, 2007 Free Software Foundation, Inc.
+
+      Permission is granted to make and distribute verbatim copies of
+      this document provided the copyright notice and this permission
+      notice are preserved on all copies.
+
+      Permission is granted to copy and distribute modified versions
+      of this document under the conditions for verbatim copying,
+      provided that the entire resulting derived work is distributed
+      under the terms of a permission notice identical to this one.
+
+      Permission is granted to copy and distribute translations of
+      this document into another language, under the above conditions
+      for modified versions, except that this permission notice may be
+      stated in a translation approved by the Free Software
+      Foundation.
+
+  man/dired-x.texi is licensed as follows:
+
+      Copyright (C) 1993, 1994, 2001, 2002, 2003, 2004,
+      2005, 2006, 2007  Free Software Foundation, Inc.
+
+      Permission is granted to make and distribute verbatim copies of
+      this manual provided the copyright notice and this permission
+      notice are preserved on all copies.
+
+      Permission is granted to copy and distribute modified versions
+      of this manual under the conditions for verbatim copying,
+      provided that the entire resulting derived work is distributed
+      under the terms of a permission notice identical to this one.
+
+      Permission is granted to copy and distribute translations of
+      this manual into another language, under the above conditions
+      for modified versions, except that this permission notice may be
+      stated in a translation approved by the Free Software
+      Foundation.
+
+      The file used to create this is called dired-x.texi, but the
+      original work that was altered to make that file was called
+      dired.texi written by Sebastian Kremer.
+
+      Permission is granted to process this file through TeX and print
+      the results, provided the printed document carries copying
+      permission notice identical to this one except for the removal
+      of this paragraph (this paragraph not being relevant to the
+      printed manual).
+  man/faq.texi is licensed as follows:
+
+      Copyright (C) 1994,1995,1996,1997,1998,1999,2000 Reuven M. Lerner
+      Copyright (C) 1992,1993 Steven Byrnes
+      Copyright (C) 1990,1991,1992 Joseph Brian Wells
+
+      This list of frequently asked questions about GNU Emacs with
+      answers ("FAQ") may be translated into other languages,
+      transformed into other formats (e.g. Texinfo, Info, WWW, WAIS),
+      and updated with new information.
+
+      The same conditions apply to any derivative of the FAQ as apply
+      to the FAQ itself.  Every copy of the FAQ must include this
+      notice or an approved translation, information on who is
+      currently maintaining the FAQ and how to contact them (including
+      their e-mail address), and information on where the latest
+      version of the FAQ is archived (including FTP information).
+
+      The FAQ may be copied and redistributed under these conditions,
+      except that the FAQ may not be embedded in a larger literary
+      work unless that work itself allows free copying and
+      redistribution.
diff --git a/debian/copyright.in b/debian/copyright.in
new file mode 100644 (file)
index 0000000..616de15
--- /dev/null
@@ -0,0 +1,125 @@
+-*-text-*-
+
+This package was debianized by Rob Browning <rlb@defaultvalue.org> on
+Tue, 16 Dec 1997 00:05:45 -0600.
+
+This is the original source archive:
+
+  prep.ai.mit.edu:/pub/gnu/emacs/emacs-@UPSTREAM_VERSION@.tar.gz
+
+Please see /usr/share/doc/@DEB_FLAVOR@-common/README.Debian.gz for a
+description of the Debian specific differences from the upstream
+version.
+
+As mentioned there, some files (including some of the Emacs
+documentation) have been removed from this package because their
+licenses do not appear to satisfy the requirements of the Debian Free
+Software Guidelines (DFSG).  See http://www.debian.org/social_contract.
+
+In particular, some of the info pages are covered under the GNU Free
+Documentation License (GFDL), which Debian has decided does not
+satisfy the DFSG in cases where "Invariant Sections" are specified
+(this includes front and back cover texts).  See this Debian General
+Resolution on the topic: http://www.debian.org/vote/2006/vote_001.
+
+Some other files have been removed because their license only allows
+verbatim copying, or because there was some other question.
+
+Copyright:
+
+  Emacs itself is licensed under the terms of the GNU General Public
+  License (GPL).  See the file /usr/share/common-licenses/GPL for more
+  information.
+
+  etc/eterm.1 is licensed as follows:
+
+      Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007
+      Free Software Foundation, Inc.
+
+      Permission is granted to make and distribute verbatim copies of
+      this document provided the copyright notice and this permission
+      notice are preserved on all copies.
+
+      Permission is granted to copy and distribute modified versions
+      of this document under the conditions for verbatim copying,
+      provided that the entire resulting derived work is distributed
+      under the terms of a permission notice identical to this one.
+
+      Permission is granted to copy and distribute translations of
+      this document into another language, under the above conditions
+      for modified versions, except that this permission notice may be
+      stated in a translation approved by the Free Software
+      Foundation.
+
+  etc/emacs.1 is licensed as follows:
+
+      Copyright (C) 1995, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
+      2006, 2007 Free Software Foundation, Inc.
+
+      Permission is granted to make and distribute verbatim copies of
+      this document provided the copyright notice and this permission
+      notice are preserved on all copies.
+
+      Permission is granted to copy and distribute modified versions
+      of this document under the conditions for verbatim copying,
+      provided that the entire resulting derived work is distributed
+      under the terms of a permission notice identical to this one.
+
+      Permission is granted to copy and distribute translations of
+      this document into another language, under the above conditions
+      for modified versions, except that this permission notice may be
+      stated in a translation approved by the Free Software
+      Foundation.
+
+  man/dired-x.texi is licensed as follows:
+
+      Copyright (C) 1993, 1994, 2001, 2002, 2003, 2004,
+      2005, 2006, 2007  Free Software Foundation, Inc.
+
+      Permission is granted to make and distribute verbatim copies of
+      this manual provided the copyright notice and this permission
+      notice are preserved on all copies.
+
+      Permission is granted to copy and distribute modified versions
+      of this manual under the conditions for verbatim copying,
+      provided that the entire resulting derived work is distributed
+      under the terms of a permission notice identical to this one.
+
+      Permission is granted to copy and distribute translations of
+      this manual into another language, under the above conditions
+      for modified versions, except that this permission notice may be
+      stated in a translation approved by the Free Software
+      Foundation.
+
+      The file used to create this is called dired-x.texi, but the
+      original work that was altered to make that file was called
+      dired.texi written by Sebastian Kremer.
+
+      Permission is granted to process this file through TeX and print
+      the results, provided the printed document carries copying
+      permission notice identical to this one except for the removal
+      of this paragraph (this paragraph not being relevant to the
+      printed manual).
+  man/faq.texi is licensed as follows:
+
+      Copyright (C) 1994,1995,1996,1997,1998,1999,2000 Reuven M. Lerner
+      Copyright (C) 1992,1993 Steven Byrnes
+      Copyright (C) 1990,1991,1992 Joseph Brian Wells
+
+      This list of frequently asked questions about GNU Emacs with
+      answers ("FAQ") may be translated into other languages,
+      transformed into other formats (e.g. Texinfo, Info, WWW, WAIS),
+      and updated with new information.
+
+      The same conditions apply to any derivative of the FAQ as apply
+      to the FAQ itself.  Every copy of the FAQ must include this
+      notice or an approved translation, information on who is
+      currently maintaining the FAQ and how to contact them (including
+      their e-mail address), and information on where the latest
+      version of the FAQ is archived (including FTP information).
+
+      The FAQ may be copied and redistributed under these conditions,
+      except that the FAQ may not be embedded in a larger literary
+      work unless that work itself allows free copying and
+      redistribution.
diff --git a/debian/dfsg-splitter b/debian/dfsg-splitter
new file mode 100644 (file)
index 0000000..cd2c9f0
--- /dev/null
@@ -0,0 +1,140 @@
+#!/bin/bash
+
+set -e
+set -x
+
+# Usage: put the relevant emacs archive into the current directory and
+# run the script.  The resulting two orig.tar.gz files will be placed
+# into a new ./split-tmp directory.
+
+emacs_archive_name="emacs-22.0.99.tar.gz"
+emacs_dir="emacs-22.0.99"
+emacs_version="22.0.99"
+emacs_major="22"
+deb_src_rev="1"
+
+non_main_dir="${emacs_dir}-non-dfsg"
+
+if ! test root = "`whoami`"
+then
+  echo Use fakeroot.
+  exit 1
+fi
+
+if test -e split-tmp
+then
+  echo "./split-tmp already exists - aborting"
+  exit 1
+fi
+
+mkdir ./split-tmp
+pushd split-tmp
+
+umask 002
+
+tar xzf "../${emacs_archive_name}"
+
+find "${emacs_dir}" -name "*.elc" -exec rm {} +
+find "${emacs_dir}"/info -type f -not -name "COPYING" -exec rm {} +
+
+mkdir "${non_main_dir}"
+
+function move_to_non_main_dir()
+{
+  pushd "${emacs_dir}"
+  test "$1"
+  test ! -e "../${non_main_dir}/$1"
+  cp -a --parents "$1" "../${non_main_dir}/"
+  rm -r "$1"
+  popd
+}
+
+function copy_to_non_main_dir()
+{
+  pushd "${emacs_dir}"
+  cp -a --parents "$1" "../${non_main_dir}/"
+  popd
+}
+
+function remove_from_main_dir()
+{
+  pushd "${emacs_dir}"
+  rm "$1"
+  popd
+}
+
+# assumes someone has already copied file to non-main dir
+function move_to_main_dir()
+{
+  pushd "${non_main_dir}"
+  cp -a --parents "$1" "../${emacs_dir}/"
+  rm "$1"
+  popd
+}
+
+# assumes someone has already copied file to non-main dir
+function copy_to_main_dir()
+{
+  pushd "${non_main_dir}"
+  cp -a --parents "$1" "../${emacs_dir}/"
+  popd
+}
+
+
+
+# So both sides will have a copy (at the very least, version.el refers to it).
+copy_to_non_main_dir "etc/COPYING"
+
+# verbatim dist only
+move_to_non_main_dir "etc/CENSORSHIP"
+move_to_non_main_dir "etc/copying.paper"
+move_to_non_main_dir "etc/LINUX-GNU"
+move_to_non_main_dir "etc/THE-GNU-PROJECT"
+move_to_non_main_dir "etc/WHY-FREE"
+move_to_non_main_dir "etc/GNU"
+move_to_non_main_dir "etc/MOTIVATION"
+
+# GFDL
+move_to_non_main_dir "lispintro"
+move_to_non_main_dir "lispref"
+
+# reprinted with permissions or copyright mentioned
+# no modification mention
+move_to_non_main_dir "etc/INTERVIEW"
+
+# Assuming modification not allowed by default (emails, etc.)
+move_to_non_main_dir "etc/COOKIES"
+move_to_non_main_dir "etc/DEVEL.HUMOR"
+move_to_non_main_dir "etc/JOKES"
+
+# This is used via debian/rules to track the nominal_ver.
+copy_to_non_main_dir "lisp/version.el"
+
+# man files which appear to be compatible with the DFSG
+dfsg_man_files="
+  dired-x.texi
+  faq.texi"
+
+pushd "${emacs_dir}"
+mkdir ../"${non_main_dir}"/man
+mv man/* ../"${non_main_dir}"/man/
+popd
+
+# want these files in both archives, so put them back
+copy_to_main_dir "man/ChangeLog"
+copy_to_main_dir "man/Makefile.in"
+
+for f in ${dfsg_man_files}
+do
+  move_to_main_dir "man/$f"
+done
+
+GZIP=-9v tar czpSf \
+  "emacs${emacs_major}_${emacs_version}+${deb_src_rev}.orig.tar.gz" \
+  "${emacs_dir}"
+
+GZIP=-9v tar czpSf \
+  "emacs${emacs_major}-non-dfsg_${emacs_version}+${deb_src_rev}.orig.tar.gz" \
+  "${emacs_dir}"-non-dfsg
+
+exit 0
diff --git a/debian/emacsVER-bin-common.postinst b/debian/emacsVER-bin-common.postinst
new file mode 100644 (file)
index 0000000..6059949
--- /dev/null
@@ -0,0 +1,29 @@
+#!/bin/sh -e
+
+FLAVOR=@DEB_FLAVOR@
+MAJOR=@MAJOR_VERSION@
+MINOR=@MINOR_VERSION@
+FULL=@FULL_VERSION@
+ALTERNATIVES="@ALTERNATIVES@"
+BIN_PRIORITY=@BIN_PRIORITY@
+
+# update-alternatives on things that collide with xemacs, other editors
+for i in ctags etags emacsclient
+do
+  update-alternatives \
+    --install /usr/bin/$i $i /usr/bin/$i.${FLAVOR} ${BIN_PRIORITY} \
+    --slave /usr/share/man/man1/$i.1.gz $i.1.gz \
+            /usr/share/man/man1/$i.1${FLAVOR}.gz 
+done
+
+for i in ${ALTERNATIVES}
+do
+  test $i = ctags && continue
+  test $i = etags && continue
+  test $i = emacs && continue
+  test $i = emacsclient && continue
+  update-alternatives --install /usr/bin/$i $i /usr/bin/$i.${FLAVOR} \
+    ${BIN_PRIORITY}
+done
+
+#DEBHELPER#
diff --git a/debian/emacsVER-bin-common.prerm b/debian/emacsVER-bin-common.prerm
new file mode 100644 (file)
index 0000000..7ae55b5
--- /dev/null
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+set -e
+
+FLAVOR=@DEB_FLAVOR@
+MAJOR=@MAJOR_VERSION@
+MINOR=@MINOR_VERSION@
+FULL=@FULL_VERSION@
+ALTERNATIVES="@ALTERNATIVES@"
+
+# update-alternatives on things that collide with xemacs, other editors
+if [ "$1" != "upgrade" ]
+then
+  for i in ${ALTERNATIVES}
+  do
+    test $i = emacs && continue
+    update-alternatives --remove $i /usr/bin/$i.${FLAVOR}
+  done
+fi
+
+#DEBHELPER#
+
diff --git a/debian/emacsVER-common.README b/debian/emacsVER-common.README
new file mode 100644 (file)
index 0000000..4181e02
--- /dev/null
@@ -0,0 +1,42 @@
+This file details the Debian specific changes to Emacs.
+
+The following tags may be used in the sections below: Patch, Status,
+Author, Added-by, Provided-by, and Date.  When known, Author is used
+to indicate the person believed to have written the relevant code.
+Provided-by may be used to indicate the person who submitted the code
+to Debian, and Added-by indicates the person who actually added the
+code to the Debian package.
+
+* The Debian copy of the upstream source contains no .elc files.
+
+  The .elc files have been removed because we always regenerate them
+  and because Emacs modifies them in the source tree during the build
+  process, even when using a VPATH build.  This means that a "make
+  clean" can't easily return the tree to the upstream state, resulting
+  in a giant Debian binary diff.  There are other solutions if this
+  turns out to be a problem.  If nothing else, we can keep the current
+  infrastructure and just add the .elc files to protected_files in
+  debian/rules.  Removing the .elc files doesn't affect whether or not
+  our source archive would match the upstream md5sum because we have
+  to repackage it anyway to add leim support.
+
+* The etc/yow.lines file has been updated from the upstream development tree.
+
+The etc/yow.lines file in the Debian package is newer than the one in
+the original distribution.  It has been copied from the upstream Emacs
+development tree.
+
+* The -i icon is the Emacs GNU.
+
+* Those who prefer the old-style scrollbars can edit debian/rules
+
+  If you prefer the old-style, non-toolkit scrollbars, just edit
+  debian/rules to add --without-toolkit-scrollbars where indicated and
+  rebuild.
+
+@@PATCH_LIST_HERE@@
+
+Local Variables:
+mode: outline
+outline-regexp: " *\\*+"
+End:
diff --git a/debian/emacsVER-common.docs b/debian/emacsVER-common.docs
new file mode 100644 (file)
index 0000000..8b0bc59
--- /dev/null
@@ -0,0 +1,3 @@
+BUGS
+README
+debian/README.add-on-package-maintainers
diff --git a/debian/emacsVER-common.postinst b/debian/emacsVER-common.postinst
new file mode 100644 (file)
index 0000000..f4c5d65
--- /dev/null
@@ -0,0 +1,41 @@
+#!/bin/sh -e
+
+MAJOR=@MAJOR_VERSION@
+MINOR=@MINOR_VERSION@
+FULL=@FULL_VERSION@
+INFO_FILES="@INFO_FILES@"
+INFO_SUBDIR="@INFO_SUBDIR@"
+
+for file in ${INFO_FILES}
+do
+  install-info --quiet --section Emacs "Emacs ${MAJOR}" \
+    /usr/share/info/${INFO_SUBDIR}/${file}.gz || true
+done
+
+# Create the site-lisp dir for this flavor if we're allowed
+
+parentdir=/usr/local/share/emacs
+newdir=${FULL}
+
+if [ -d ${parentdir} ]
+then
+  if mkdir ${parentdir}/${newdir} 2>/dev/null
+  then
+    chown root:staff ${parentdir}/${newdir}
+    chmod 2775 ${parentdir}/${newdir}
+  fi
+fi
+
+parentdir=/usr/local/share/emacs/${FULL}
+newdir=site-lisp
+
+if [ -d ${parentdir} ]
+then
+  if mkdir ${parentdir}/${newdir} 2>/dev/null
+  then
+    chown root:staff ${parentdir}/${newdir}
+    chmod 2775 ${parentdir}/${newdir}
+  fi
+fi
+
+#DEBHELPER#
diff --git a/debian/emacsVER-common.prerm b/debian/emacsVER-common.prerm
new file mode 100644 (file)
index 0000000..b1aefd4
--- /dev/null
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+set -e
+
+MAJOR=@MAJOR_VERSION@
+MINOR=@MINOR_VERSION@
+FULL=@FULL_VERSION@
+INFO_FILES="@INFO_FILES@"
+INFO_SUBDIR="@INFO_SUBDIR@"
+
+for file in ${INFO_FILES}
+do
+  install-info --quiet --remove-exactly ${INFO_SUBDIR}/${file} || true
+done
+
+# emacsen-common/emacs-remove used to be here.
+
+(rmdir /usr/local/share/emacs/${FULL}/site-lisp 2>/dev/null && \
+ rmdir /usr/local/share/emacs/${FULL}           2>/dev/null) || true
+
+#DEBHELPER#
diff --git a/debian/emacsVER.README b/debian/emacsVER.README
new file mode 100644 (file)
index 0000000..f1608a8
--- /dev/null
@@ -0,0 +1,3 @@
+
+Please see /usr/share/doc/@PKG_NAME@-common/ as the primary
+documentation directory.
diff --git a/debian/emacsVER.README.Debian b/debian/emacsVER.README.Debian
new file mode 100644 (file)
index 0000000..ceef862
--- /dev/null
@@ -0,0 +1,3 @@
+
+Please see /usr/share/doc/emacs@MAJOR_VERSION@-common/ as the primary
+documentation directory.
diff --git a/debian/emacsVER.desktop b/debian/emacsVER.desktop
new file mode 100644 (file)
index 0000000..f37f10b
--- /dev/null
@@ -0,0 +1,13 @@
+[Desktop Entry]
+Version=1.0
+Encoding=UTF-8
+Name=Emacs @MENU_VERSION@ (X11)
+GenericName=Emacs
+Comment=GNU Emacs Text Editor @MENU_VERSION@
+Exec=/usr/bin/@DEB_FLAVOR@
+TryExec=@DEB_FLAVOR@
+Terminal=false
+Type=Application
+Icon=/usr/share/emacs/@FULL_VERSION@/etc/images/icons/emacs_48.png
+Categories=Application;Utility;TextEditor;
+MimeType=text/plain
diff --git a/debian/emacsVER.menu b/debian/emacsVER.menu
new file mode 100644 (file)
index 0000000..3be7d04
--- /dev/null
@@ -0,0 +1,17 @@
+?package(@PKG_NAME@):\
+  needs="X11"\
+  section="Apps/Editors"\
+  title="Emacs @MENU_VERSION@ (X11)"\
+  command="/usr/bin/@DEB_FLAVOR@"\
+  icon16x16="/usr/share/emacs/@FULL_VERSION@/etc/images/icons/emacs_16.xpm"\
+  icon32x32="/usr/share/emacs/@FULL_VERSION@/etc/images/icons/emacs_32.xpm"\
+  hints="Text"
+
+?package(@PKG_NAME@):\
+  needs="text"\
+  section="Apps/Editors"\
+  title="Emacs @MENU_VERSION@ (text)"\
+  command="/usr/bin/@DEB_FLAVOR@ -nw"\
+  icon16x16="/usr/share/emacs/@FULL_VERSION@/etc/images/icons/emacs_16.xpm"\
+  icon32x32="/usr/share/emacs/@FULL_VERSION@/etc/images/icons/emacs_32.xpm"\
+  hints="Text"
diff --git a/debian/emacsVER.postinst b/debian/emacsVER.postinst
new file mode 100644 (file)
index 0000000..75a0548
--- /dev/null
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+set -e
+
+FLAVOR=@DEB_FLAVOR@
+
+update-alternatives \
+  --install /usr/bin/emacs emacs \
+            /usr/bin/${FLAVOR}-@X_SUPPORT@ @BIN_PRIORITY@ \
+  --slave /usr/share/man/man1/emacs.1.gz emacs.1.gz \
+          /usr/share/man/man1/emacs.1${FLAVOR}.gz
+
+update-alternatives \
+  --install /usr/bin/editor editor \
+            /usr/bin/${FLAVOR} 0 \
+  --slave /usr/share/man/man1/editor.1.gz editor.1.gz \
+          /usr/share/man/man1/emacs.1${FLAVOR}.gz
+
+# emacsen-common registration.
+/usr/lib/emacsen-common/emacs-install ${FLAVOR}
+
+#DEBHELPER#
diff --git a/debian/emacsVER.prerm b/debian/emacsVER.prerm
new file mode 100644 (file)
index 0000000..bbc877e
--- /dev/null
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+set -e
+
+MAJOR=@MAJOR_VERSION@
+FLAVOR=@DEB_FLAVOR@
+
+# update-alternatives on things that collide with xemacs, other editors
+if [ "$1" != "upgrade" ]
+then
+  update-alternatives --remove emacs /usr/bin/${FLAVOR}-@X_SUPPORT@
+  update-alternatives --remove editor /usr/bin/${FLAVOR}
+fi
+
+# emacsen-common registration.
+/usr/lib/emacsen-common/emacs-remove ${FLAVOR}
+
+#DEBHELPER#
diff --git a/debian/mangle-info b/debian/mangle-info
new file mode 100644 (file)
index 0000000..3ac0e32
--- /dev/null
@@ -0,0 +1,17 @@
+#!/usr/bin/perl -w -i
+
+use English;
+use strict;
+
+$RS = undef;
+
+my $prefix = $ENV{"DEBIAN_INFO_PREFIX"};
+
+my $x = <>;
+if(!($x =~ m/^(\s*START-INFO-DIR-ENTRY\s+\*\s*[^:]+:\s*)\(([^\)]+)\)/mo)) {
+  die "Couldn't find START-INFO-DIR-ENTRY.";
+}
+   
+print ${PREMATCH};
+print "$1($prefix/$2)";
+print ${POSTMATCH};
diff --git a/debian/missing-file.dfsg b/debian/missing-file.dfsg
new file mode 100644 (file)
index 0000000..47ad341
--- /dev/null
@@ -0,0 +1,10 @@
+
+The file that would normally be displayed here (@FILE@) has been moved
+to the emacs@MAJOR_VERSION@-common-non-dfsg package because its
+license does not appear to be compatible with the Debian Free Software
+Guidelines (DFSG).  Please see
+/usr/share/doc/emacs@MAJOR_VERSION@-common/copyright for more
+information.
+
+Please install @FILE@ from Debian's non-free distribution if you would
+like for Emacs to display the original file.
diff --git a/debian/patches/autofiles.diff b/debian/patches/autofiles.diff
new file mode 100644 (file)
index 0000000..b09501f
--- /dev/null
@@ -0,0 +1,56 @@
+* The autoconf related files have been updated.
+  Patch: autofiles.dpatch
+  Author: N/A (automatically generated)
+diff -ruN old/configure new/configure
+--- old/configure      2007-05-13 17:25:24.000000000 -0700
++++ new/configure      2007-05-13 17:25:35.000000000 -0700
+@@ -17907,11 +17907,13 @@
+ cat confdefs.h >>conftest.$ac_ext
+ cat >>conftest.$ac_ext <<_ACEOF
+ /* end confdefs.h.  */
+-#include <stdio.h>
++#include <sys/types.h> /* for off_t */
++     #include <stdio.h>
+ int
+ main ()
+ {
+-return fseeko (stdin, 0, 0) && (fseeko) (stdin, 0, 0);
++int (*fp) (FILE *, off_t, int) = fseeko;
++     return fseeko (stdin, 0, 0) && fp (stdin, 0, 0);
+   ;
+   return 0;
+ }
+@@ -17951,11 +17953,13 @@
+ cat >>conftest.$ac_ext <<_ACEOF
+ /* end confdefs.h.  */
+ #define _LARGEFILE_SOURCE 1
+-#include <stdio.h>
++#include <sys/types.h> /* for off_t */
++     #include <stdio.h>
+ int
+ main ()
+ {
+-return fseeko (stdin, 0, 0) && (fseeko) (stdin, 0, 0);
++int (*fp) (FILE *, off_t, int) = fseeko;
++     return fseeko (stdin, 0, 0) && fp (stdin, 0, 0);
+   ;
+   return 0;
+ }
+@@ -23156,7 +23160,7 @@
+ rm -f conftest*
+-ac_config_files="$ac_config_files Makefile lib-src/Makefile.c:lib-src/Makefile.in oldXMenu/Makefile man/Makefile lwlib/Makefile src/Makefile.c:src/Makefile.in lisp/Makefile lispref/Makefile lispintro/Makefile leim/Makefile"
++ac_config_files="$ac_config_files Makefile lib-src/Makefile.c:lib-src/Makefile.in oldXMenu/Makefile man/Makefile lwlib/Makefile src/Makefile.c:src/Makefile.in lisp/Makefile leim/Makefile"
+ ac_config_commands="$ac_config_commands default"
+@@ -23730,8 +23734,6 @@
+     "lwlib/Makefile") CONFIG_FILES="$CONFIG_FILES lwlib/Makefile" ;;
+     "src/Makefile.c") CONFIG_FILES="$CONFIG_FILES src/Makefile.c:src/Makefile.in" ;;
+     "lisp/Makefile") CONFIG_FILES="$CONFIG_FILES lisp/Makefile" ;;
+-    "lispref/Makefile") CONFIG_FILES="$CONFIG_FILES lispref/Makefile" ;;
+-    "lispintro/Makefile") CONFIG_FILES="$CONFIG_FILES lispintro/Makefile" ;;
+     "leim/Makefile") CONFIG_FILES="$CONFIG_FILES leim/Makefile" ;;
+     "default") CONFIG_COMMANDS="$CONFIG_COMMANDS default" ;;
diff --git a/debian/patches/avoid-fakemail-mail-loss.diff b/debian/patches/avoid-fakemail-mail-loss.diff
new file mode 100644 (file)
index 0000000..864aba6
--- /dev/null
@@ -0,0 +1,91 @@
+* An attempt is made to avoid silently losing mail via fakemail.
+  Patch: avoid-fakemail-mail-loss.diff
+  Author: Rob Browning <rlb@defaultvalue.org>
+  Added-by: Rob Browning <rlb@defaultvalue.org>
+
+  This fix attempts to avoid a situation where Emacs can silently lose
+  mail.  This can occur if sendmail.el (at least) falls back to
+  fakemail, and the underlying binary (MAIL_PROGRAM_NAME) that
+  fakemail is configured to use doesn't exist.  Unless
+  mail-interactive is true, Emacs won't wait for the mailer and so
+  won't know that fakemail failed.
+
+  For now, Debian sets fakemail's MAIL_PROGRAM_NAME to /usr/bin/mail
+  (which is the correct value for Debian systems) rather than
+  /bin/mail.  Debian also adjusts Emacs to test for the existence of
+  /usr/bin/mail before trying to run fakemail.  This is not an ideal
+  solution, but it should be an improvement.
+
+  Note that Debian forces the value to /usr/bin/mail.  The build will
+  fail if any other value is specified.  This is done to ensure that
+  MAIL_PROGRAM_NAME isn't accidentally set to some other value during
+  the build process.  If this is undesirable for some reason, just
+  commment out avoid-fakemail-loss.diff in debian/patches/series.
+  
+Index: sid/lib-src/fakemail.c
+===================================================================
+--- sid.orig/lib-src/fakemail.c
++++ sid/lib-src/fakemail.c
+@@ -135,8 +135,10 @@
+ #define NIL ((line_list) NULL)
+ #define INITIAL_LINE_SIZE 200
+-#ifndef MAIL_PROGRAM_NAME
+-#define MAIL_PROGRAM_NAME "/bin/mail"
++#ifdef MAIL_PROGRAM_NAME
++#error "Debian assumption violated -- see avoid-fakemail-mail-loss.diff"
++#else
++#define MAIL_PROGRAM_NAME "/usr/bin/mail"
+ #endif
+ static char *my_name;
+Index: sid/lisp/mail/feedmail.el
+===================================================================
+--- sid.orig/lisp/mail/feedmail.el
++++ sid/lisp/mail/feedmail.el
+@@ -1348,7 +1348,10 @@
+                             "/usr/lib/sendmail")
+                            ((file-exists-p "/usr/ucblib/sendmail")
+                             "/usr/ucblib/sendmail")
+-                           (t "fakemail"))
++                           (t
++                              (if (not (file-executable-p "/usr/bin/mail"))
++                                  (error "/usr/bin/mail is not executable"))
++                              "fakemail"))
+                      nil errors-to nil "-oi" "-t")
+                ;; provide envelope "from" to sendmail; results will vary
+                (list "-f" user-mail-address)
+Index: sid/lisp/mail/sendmail.el
+===================================================================
+--- sid.orig/lisp/mail/sendmail.el
++++ sid/lisp/mail/sendmail.el
+@@ -53,7 +53,10 @@
+     ((file-exists-p "/usr/sbin/sendmail") "/usr/sbin/sendmail")
+     ((file-exists-p "/usr/lib/sendmail") "/usr/lib/sendmail")
+     ((file-exists-p "/usr/ucblib/sendmail") "/usr/ucblib/sendmail")
+-    (t "fakemail"))                   ;In ../etc, to interface to /bin/mail.
++    (t
++     (if (not (file-executable-p "/usr/bin/mail"))
++         (error "/usr/bin/mail is not executable"))
++     "fakemail"))                     ;In ../etc, to interface to /bin/mail.
+   "Program used to send messages."
+   :group 'mail
+   :type 'file)
+Index: sid/lisp/gnus/message.el
+===================================================================
+--- sid.orig/lisp/gnus/message.el
++++ sid/lisp/gnus/message.el
+@@ -4027,7 +4027,12 @@
+                                    "/usr/lib/sendmail")
+                                   ((file-exists-p "/usr/ucblib/sendmail")
+                                    "/usr/ucblib/sendmail")
+-                                  (t "fakemail"))
++                                  (t
++                                     (if (not
++                                          (file-executable-p "/usr/bin/mail"))
++                                         (error
++                                          "/usr/bin/mail is not executable"))
++                                     "fakemail"))
+                             nil errbuf nil "-oi")
+                       ;; Always specify who from,
+                       ;; since some systems have broken sendmails.
diff --git a/debian/patches/debian-adjust-mail-from-addresses.diff b/debian/patches/debian-adjust-mail-from-addresses.diff
new file mode 100644 (file)
index 0000000..382d20f
--- /dev/null
@@ -0,0 +1,46 @@
+* The default handling of mail from addresses has been changed.
+  Patch: debian-adjust-mail-from-addresses.diff
+  Bug: 7051 35128
+
+  * The default for message-sendmail-f-is-evil has been changed to t.
+
+    This is correct for Debian systems where we know the MTA should be
+    trusted.
+    
+  * The default mail-from-style is 'system-default rather than 'angles.
+    
+Index: sid/lisp/gnus/message.el
+===================================================================
+--- sid.orig/lisp/gnus/message.el
++++ sid/lisp/gnus/message.el
+@@ -738,9 +738,14 @@
+                (const never)
+                (const ask)))
+-(defcustom message-sendmail-f-is-evil nil
+-  "*Non-nil means don't add \"-f username\" to the sendmail command line.
+-Doing so would be even more evil than leaving it out."
++;; message-sendmail-f-is-evil is nil here in the upstream source, but
++;; sendmail works right under Debian Linux, so we want t. [was
++;; orignally reported for emacs 19 as debian#7051]
++(defcustom message-sendmail-f-is-evil t
++  "*Non-nil means don't add \"-f username\" to the sendmail command
++line, because adding it would be more evil than leaving it out.  Under
++Debian/GNU/Linux, sendmail works right, so it should be safe for this
++to be set to true."
+   :group 'message-sending
+   :link '(custom-manual "(message)Mail Variables")
+   :type 'boolean)
+Index: sid/lisp/mail/sendmail.el
+===================================================================
+--- sid.orig/lisp/mail/sendmail.el
++++ sid/lisp/mail/sendmail.el
+@@ -59,7 +59,7 @@
+   :type 'file)
+ ;;;###autoload
+-(defcustom mail-from-style 'angles
++(defcustom mail-from-style 'system-default
+   "Specifies how \"From:\" fields look.
+ If `nil', they contain just the return address like:
diff --git a/debian/patches/debian-startup.diff b/debian/patches/debian-startup.diff
new file mode 100644 (file)
index 0000000..4be3e3e
--- /dev/null
@@ -0,0 +1,47 @@
+* Emacs runs debian-startup and sets debian-emacs-flavor.
+  Patch: debian-startup.diff
+
+  * Emacs runs debian-startup during the startup process unless
+    site-run-file is false.
+    
+  * The global variable debian-emacs-flavor is bound to 'emacs22.
+    Author: Rob Browning <rlb@defaultvalue.org>
+    
+Index: sid/lisp/startup.el
+===================================================================
+--- sid.orig/lisp/startup.el
++++ sid/lisp/startup.el
+@@ -295,6 +295,10 @@
+ (defvar pure-space-overflow nil
+   "Non-nil if building Emacs overflowed pure space.")
++(defconst debian-emacs-flavor 'emacs22
++  "A symbol representing the particular debian flavor of emacs running.
++Something like 'emacs20, 'xemacs20, etc.")
++
+ (defun normal-top-level-add-subdirs-to-load-path ()
+   "Add all subdirectories of current directory to `load-path'.
+ More precisely, this uses only the subdirectories whose names
+@@ -815,8 +819,21 @@
+     ;; Run the site-start library if it exists.  The point of this file is
+     ;; that it is run before .emacs.  There is no point in doing this after
+     ;; .emacs; that is useless.
++
++    ;; Original upstream startup
++    ;; (if site-run-file
++    ;;     (load site-run-file t t))
++    ;;
++
++    ;; Debian startup
+     (if site-run-file
+-      (load site-run-file t t))
++        (progn
++          ;; Load all the debian package snippets.
++          ;; It's in here because we want -q to kill it too.
++          (if (load "debian-startup" t t nil)
++              (debian-startup debian-emacs-flavor))
++          ;; Now the normal site file...
++          (load site-run-file t t nil)))
+     ;; Sites should not disable this.  Only individuals should disable
+     ;; the startup message.
diff --git a/debian/patches/fix-vc-path.diff b/debian/patches/fix-vc-path.diff
new file mode 100644 (file)
index 0000000..b0fb4d8
--- /dev/null
@@ -0,0 +1,19 @@
+* The default vc-path variable value has been adjusted for Debian.
+  Patch: fix-vc-path.diff
+  Bug: 120079
+
+Index: sid/lisp/vc-hooks.el
+===================================================================
+--- sid.orig/lisp/vc-hooks.el
++++ sid/lisp/vc-hooks.el
+@@ -73,8 +73,8 @@
+   :group 'vc)
+ (defcustom vc-path
+-  (if (file-directory-p "/usr/sccs")
+-      '("/usr/sccs")
++  (if (file-directory-p "/usr/lib/cssc")
++      '("/usr/lib/cssc")
+     nil)
+   "*List of extra directories to search for version control commands."
+   :type '(repeat directory)
diff --git a/debian/patches/handle-dfsg-split.diff b/debian/patches/handle-dfsg-split.diff
new file mode 100644 (file)
index 0000000..f17bf9f
--- /dev/null
@@ -0,0 +1,493 @@
+* Files apparently incompatible with the DFSG have been removed.
+
+  A number of files have been removed from this package because their
+  licenses are not compatible with the Debian Free Software Guidelines
+  (DFSG), or because it wasn't completely clear that their licenses
+  are compatible.
+
+  In particular, all of the files which are covered under the GFDL and
+  have invariant sections have been removed in accordance with this
+  General Resolution: http://www.debian.org/vote/2006/vote_001.
+
+  The files that have been removed, but still appear to be
+  distributable, have been moved to packages in Debian's non-free
+  section.
+
+  Patch: handle-dfsg-split.diff
+  Author: Rob Browning <rlb@defaultvalue.org>
+  Added-by: Rob Browning <rlb@defaultvalue.org>
+  Status: new
+
+Index: sid/lisp/help.el
+===================================================================
+--- sid.orig/lisp/help.el
++++ sid/lisp/help.el
+@@ -279,6 +279,14 @@
\f
+ ;;; `User' help functions
++(defun debian-expand-file-name-dfsg (filename)
++  "Apply expand-file-name to FILENAME.
++If expand-file-name does not find a file, append `.dfsg' and try again."
++  (let ((file (expand-file-name file data-directory)))
++    (if (file-exists-p file)
++        file
++      (expand-file-name (concat file ".dfsg") data-directory))))
++
+ (defun describe-distribution ()
+   "Display info on how to obtain the latest version of GNU Emacs."
+   (interactive)
+@@ -293,7 +301,7 @@
+ (defun describe-project ()
+   "Display info on the GNU project."
+   (interactive)
+-  (view-file (expand-file-name "THE-GNU-PROJECT" data-directory))
++  (view-file (debian-expand-file-name-dfsg "THE-GNU-PROJECT" data-directory))
+   (goto-char (point-min)))
+ (defun describe-no-warranty ()
+Index: sid/Makefile.in
+===================================================================
+--- sid.orig/Makefile.in
++++ sid/Makefile.in
+@@ -138,11 +138,7 @@
+ # since there are now many packages documented with the texinfo
+ # system, it is inappropriate to imply that it is part of Emacs.
+ infodir=@infodir@
+-INFO_FILES=ada-mode autotype calc ccmode cl dired-x ebrowse ediff efaq \
+-           elisp eintr emacs emacs-mime eshell eudc flymake \
+-           forms gnus idlwave info message mh-e newsticker org pcl-cvs \
+-           pgg reftex sc ses sieve speedbar tramp vip viper widget     \
+-           woman smtpmail url rcirc erc
++INFO_FILES=dired-x efaq
+ # Directory for local state files for all programs.
+ localstatedir=@localstatedir@
+@@ -250,7 +246,7 @@
+ SUBDIR = lib-src src
+ # The makefiles of the directories in $SUBDIR.
+-SUBDIR_MAKEFILES = lib-src/Makefile man/Makefile lispref/Makefile lispintro/Makefile src/Makefile oldXMenu/Makefile lwlib/Makefile leim/Makefile
++SUBDIR_MAKEFILES = lib-src/Makefile man/Makefile src/Makefile oldXMenu/Makefile lwlib/Makefile leim/Makefile
+ # Subdirectories to install, and where they'll go.
+ # lib-src's makefile knows how to install it, so we don't do that here.
+@@ -339,12 +335,6 @@
+ man/Makefile: $(srcdir)/man/Makefile.in config.status
+       ./config.status
+-lispref/Makefile: $(srcdir)/lispref/Makefile.in config.status
+-      ./config.status
+-
+-lispintro/Makefile: $(srcdir)/lispintro/Makefile.in config.status
+-      ./config.status
+-
+ oldXMenu/Makefile: $(srcdir)/oldXMenu/Makefile.in config.status
+       ./config.status
+@@ -616,8 +606,6 @@
+       (cd lwlib;    $(MAKE) $(MFLAGS) mostlyclean)
+       (cd lib-src;  $(MAKE) $(MFLAGS) mostlyclean)
+       -(cd man &&   $(MAKE) $(MFLAGS) mostlyclean)
+-      -(cd lispref &&   $(MAKE) $(MFLAGS) mostlyclean)
+-      -(cd lispintro &&   $(MAKE) $(MFLAGS) mostlyclean)
+       (cd leim;     $(MAKE) $(MFLAGS) mostlyclean)
+ ### `clean'
+@@ -634,8 +622,6 @@
+       (cd lwlib;    $(MAKE) $(MFLAGS) clean)
+       (cd lib-src;  $(MAKE) $(MFLAGS) clean)
+       -(cd man &&   $(MAKE) $(MFLAGS) clean)
+-      -(cd lispref &&   $(MAKE) $(MFLAGS) clean)
+-      -(cd lispintro &&   $(MAKE) $(MFLAGS) clean)
+       (cd leim;     $(MAKE) $(MFLAGS) clean)
+ ### `distclean'
+@@ -654,8 +640,6 @@
+       (cd lwlib;    $(MAKE) $(MFLAGS) distclean)
+       (cd lib-src;  $(MAKE) $(MFLAGS) distclean)
+       (cd man &&    $(MAKE) $(MFLAGS) distclean)
+-      (cd lispref &&    $(MAKE) $(MFLAGS) distclean)
+-      (cd lispintro &&    $(MAKE) $(MFLAGS) distclean)
+       (cd leim;     $(MAKE) $(MFLAGS) distclean)
+       (cd lisp;     $(MAKE) $(MFLAGS) distclean)
+       ${top_distclean}
+@@ -677,8 +661,6 @@
+       (cd lwlib;    $(MAKE) $(MFLAGS) maintainer-clean)
+       (cd lib-src;  $(MAKE) $(MFLAGS) maintainer-clean)
+       -(cd man &&   $(MAKE) $(MFLAGS) maintainer-clean)
+-      -(cd lispref &&   $(MAKE) $(MFLAGS) maintainer-clean)
+-      -(cd lispintro &&   $(MAKE) $(MFLAGS) maintainer-clean)
+       (cd leim;     $(MAKE) $(MFLAGS) maintainer-clean)
+       (cd lisp;     $(MAKE) $(MFLAGS) maintainer-clean)
+       ${top_distclean}
+@@ -716,8 +698,6 @@
+       (cd lisp; $(MAKE) $(MFLAGS) unlock)
+       (cd lisp/term; chmod u+w README *.el)
+       (cd man; chmod u+w *texi* ChangeLog split-man)
+-      (cd lispref; chmod u+w *texi* ChangeLog)
+-      (cd lispintro; chmod u+w *texi* ChangeLog)
+       (cd oldXMenu; chmod u+w *.[ch] Makefile README)
+       (cd lwlib; chmod u+w *.[ch] Makefile README)
+       (cd src; $(MAKE) $(MFLAGS) unlock)
+@@ -730,8 +710,6 @@
+       (cd lisp; $(MAKE) $(MFLAGS) relock)
+       (cd lisp/term; chmod u+w README *.el)
+       (cd man; chmod u+w *texi* ChangeLog split-man)
+-      (cd lispref; chmod u+w *texi* ChangeLog)
+-      (cd lispintro; chmod u+w *texi* ChangeLog)
+       (cd oldXMenu; chmod u+w *.[ch] Makefile README)
+       (cd lwlib; chmod u+w *.[ch] Makefile README)
+       (cd src; $(MAKE) $(MFLAGS) relock)
+@@ -754,12 +732,8 @@
+ # so we can do ok running make in the build dir.
+ info: force-info
+       -(cd man; $(MAKE) $(MFLAGS) info)
+-      -(cd lispref; $(MAKE) $(MFLAGS) info)
+-      -(cd lispintro; $(MAKE) $(MFLAGS) info)
+ dvi:
+       (cd man; $(MAKE) $(MFLAGS) dvi)
+-      (cd lispref; $(MAKE) $(MFLAGS) elisp.dvi)
+-      (cd lispintro; $(MAKE) $(MFLAGS) emacs-lisp-intro.dvi)
+ #### Bootstrapping.
+@@ -809,6 +783,4 @@
+       (cd lwlib;    $(MAKE) $(MFLAGS) clean)
+       (cd lib-src;  $(MAKE) $(MFLAGS) clean)
+       -(cd man &&   $(MAKE) $(MFLAGS) clean)
+-      -(cd lispref &&   $(MAKE) $(MFLAGS) clean)
+-      -(cd lispintro &&   $(MAKE) $(MFLAGS) clean)
+       (cd leim;     $(MAKE) $(MFLAGS) clean)
+Index: sid/man/Makefile.in
+===================================================================
+--- sid.orig/man/Makefile.in
++++ sid/man/Makefile.in
+@@ -33,24 +33,8 @@
+ # The makeinfo program is part of the Texinfo distribution.
+ # Use --force so that it generates output even if there are errors.
+ MAKEINFO = makeinfo --force
+-INFO_TARGETS = ../info/emacs ../info/ccmode ../info/cl \
+-              ../info/dired-x ../info/ediff ../info/forms ../info/gnus \
+-              ../info/message ../info/sieve ../info/pgg ../info/emacs-mime \
+-              ../info/info ../info/mh-e ../info/reftex \
+-              ../info/sc ../info/vip ../info/viper ../info/widget \
+-              ../info/efaq ../info/ada-mode ../info/autotype ../info/calc \
+-              ../info/idlwave ../info/eudc ../info/ebrowse ../info/pcl-cvs \
+-              ../info/woman ../info/eshell ../info/org ../info/url \
+-              ../info/speedbar ../info/tramp ../info/ses ../info/smtpmail \
+-              ../info/flymake ../info/newsticker ../info/rcirc ../info/erc
+-DVI_TARGETS =         emacs.dvi calc.dvi cc-mode.dvi cl.dvi dired-x.dvi \
+-               ediff.dvi forms.dvi gnus.dvi message.dvi emacs-mime.dvi \
+-                 gnus.dvi message.dvi sieve.dvi pgg.dvi mh-e.dvi \
+-               reftex.dvi sc.dvi vip.dvi viper.dvi widget.dvi faq.dvi \
+-               ada-mode.dvi autotype.dvi idlwave.dvi eudc.dvi ebrowse.dvi \
+-               pcl-cvs.dvi woman.dvi eshell.dvi org.dvi url.dvi \
+-               speedbar.dvi tramp.dvi ses.dvi smtpmail.dvi flymake.dvi \
+-                 newsticker.dvi emacs-xtra.dvi rcirc.dvi erc.dvi
++INFO_TARGETS = ../info/dired-x ../info/efaq
++DVI_TARGETS = dired-x.dvi faq.dvi
+ INFOSOURCES = info.texi
+ # The following rule does not work with all versions of `make'.
+@@ -61,64 +45,6 @@
+ TEXI2DVI = texi2dvi
+ ENVADD = TEXINPUTS="$(srcdir):$(TEXINPUTS)" MAKEINFO="$(MAKEINFO) -I$(srcdir)"
+-EMACS_XTRA=\
+-      $(srcdir)/arevert-xtra.texi \
+-      $(srcdir)/cal-xtra.texi \
+-      $(srcdir)/dired-xtra.texi \
+-      $(srcdir)/picture-xtra.texi \
+-      $(srcdir)/emerge-xtra.texi \
+-      $(srcdir)/vc-xtra.texi \
+-      $(srcdir)/vc1-xtra.texi \
+-      $(srcdir)/vc2-xtra.texi \
+-      $(srcdir)/fortran-xtra.texi \
+-      $(srcdir)/msdog-xtra.texi
+-
+-EMACSSOURCES= \
+-      ${srcdir}/emacs.texi \
+-      ${srcdir}/doclicense.texi \
+-      ${srcdir}/screen.texi \
+-      ${srcdir}/commands.texi \
+-      ${srcdir}/entering.texi \
+-      ${srcdir}/basic.texi \
+-      ${srcdir}/mini.texi \
+-      ${srcdir}/m-x.texi \
+-      ${srcdir}/help.texi \
+-      ${srcdir}/mark.texi \
+-      ${srcdir}/killing.texi \
+-      ${srcdir}/regs.texi \
+-      ${srcdir}/display.texi \
+-      ${srcdir}/search.texi \
+-      ${srcdir}/fixit.texi \
+-      ${srcdir}/files.texi \
+-      ${srcdir}/buffers.texi \
+-      ${srcdir}/windows.texi \
+-      ${srcdir}/frames.texi \
+-      ${srcdir}/mule.texi \
+-      ${srcdir}/major.texi \
+-      ${srcdir}/indent.texi \
+-      ${srcdir}/text.texi \
+-      ${srcdir}/programs.texi \
+-      ${srcdir}/building.texi \
+-      ${srcdir}/maintaining.texi \
+-      ${srcdir}/abbrevs.texi \
+-      ${srcdir}/sending.texi \
+-      ${srcdir}/rmail.texi \
+-      ${srcdir}/dired.texi \
+-      ${srcdir}/calendar.texi \
+-      ${srcdir}/misc.texi \
+-      ${srcdir}/custom.texi \
+-      ${srcdir}/trouble.texi \
+-      ${srcdir}/cmdargs.texi \
+-      ${srcdir}/xresources.texi \
+-      ${srcdir}/anti.texi \
+-      ${srcdir}/macos.texi \
+-      ${srcdir}/msdog.texi \
+-      ${srcdir}/gnu.texi \
+-      ${srcdir}/glossary.texi \
+-      ${srcdir}/ack.texi \
+-      ${srcdir}/kmacro.texi \
+-      $(EMACS_XTRA)
+-
+ info: $(top_srcdir)/info $(INFO_TARGETS)
+ $(top_srcdir)/info:
+@@ -131,222 +57,16 @@
+ # to exist in the build directory.
+ # In a distribution of Emacs, the Info files should be up to date.
+-# The following target uses an explicit -o switch to work around
+-# the @setfilename directive in info.texi, which is required for
+-# the Texinfo distribution.
+-
+-../info/info: ${INFOSOURCES}
+-      cd $(srcdir); $(MAKEINFO) --no-split info.texi -o $@
+-
+-info.dvi: ${INFOSOURCES}
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/info.texi
+-
+-../info/emacs: ${EMACSSOURCES}
+-      cd $(srcdir); $(MAKEINFO) emacs.texi
+-
+-emacs.dvi: ${EMACSSOURCES}
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs.texi
+-
+-# This target is here so you could easily get the list of the *.texi
+-# files which belong to the Emacs manual (as opposed to the separate
+-# manuals for CL, CC Mode, Ebrowse, etc.).  With this target, you can
+-# say things like "grep foo `make emacsman`".
+-emacsman:
+-      @echo $(EMACSSOURCES)
+-
+-../info/ccmode: cc-mode.texi
+-      cd $(srcdir); $(MAKEINFO) cc-mode.texi
+-cc-mode.dvi: cc-mode.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/cc-mode.texi
+-
+-../info/ada-mode: ada-mode.texi
+-      cd $(srcdir); $(MAKEINFO) ada-mode.texi
+-ada-mode.dvi: ada-mode.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/ada-mode.texi
+-
+-../info/pcl-cvs: pcl-cvs.texi
+-      cd $(srcdir); $(MAKEINFO) pcl-cvs.texi
+-pcl-cvs.dvi: pcl-cvs.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/pcl-cvs.texi
+-
+-../info/eshell: eshell.texi
+-      cd $(srcdir); $(MAKEINFO) eshell.texi
+-eshell.dvi: eshell.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/eshell.texi
+-
+-../info/cl: cl.texi
+-      cd $(srcdir); $(MAKEINFO) cl.texi
+-cl.dvi: cl.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/cl.texi
+-
+ ../info/dired-x: dired-x.texi
+       cd $(srcdir); $(MAKEINFO) dired-x.texi
+ dired-x.dvi: dired-x.texi
+       $(ENVADD) $(TEXI2DVI) ${srcdir}/dired-x.texi
+-../info/ediff: ediff.texi
+-      cd $(srcdir); $(MAKEINFO) ediff.texi
+-ediff.dvi: ediff.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/ediff.texi
+-
+-emacs-xtra.dvi: emacs-xtra.texi $(EMACS_XTRA)
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs-xtra.texi
+-
+-../info/forms: forms.texi
+-      cd $(srcdir); $(MAKEINFO) forms.texi
+-forms.dvi: forms.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/forms.texi
+-
+-# gnus/message/emacs-mime/sieve/pgg are part of Gnus:
+-../info/gnus: gnus.texi gnus-faq.texi
+-      cd $(srcdir); $(MAKEINFO) gnus.texi
+-gnus.dvi: gnus.texi gnus-faq.texi
+-      sed -e '/@iflatex/,/@end iflatex/d' ${srcdir}/gnus.texi > gnustmp.texi
+-      $(ENVADD) $(TEXI2DVI) gnustmp.texi
+-      cp gnustmp.dvi $*.dvi
+-      rm gnustmp.*
+-
+-../info/message: message.texi
+-      cd $(srcdir); $(MAKEINFO) message.texi
+-message.dvi: message.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/message.texi
+-
+-../info/sieve: sieve.texi
+-      cd $(srcdir); $(MAKEINFO) sieve.texi
+-sieve.dvi: sieve.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/sieve.texi
+-
+-../info/emacs-mime: emacs-mime.texi
+-      cd $(srcdir); $(MAKEINFO) emacs-mime.texi
+-emacs-mime.dvi: emacs-mime.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs-mime.texi
+-
+-../info/pgg: pgg.texi
+-      cd $(srcdir); $(MAKEINFO) pgg.texi
+-pgg.dvi: pgg.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/pgg.texi
+-
+-../info/mh-e: mh-e.texi
+-      cd $(srcdir); $(MAKEINFO) mh-e.texi
+-mh-e.dvi: mh-e.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/mh-e.texi
+-
+-../info/reftex: reftex.texi
+-      cd $(srcdir); $(MAKEINFO) reftex.texi
+-reftex.dvi: reftex.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/reftex.texi
+-
+-../info/sc: sc.texi
+-      cd $(srcdir); $(MAKEINFO) sc.texi
+-sc.dvi: sc.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/sc.texi
+-
+-../info/vip: vip.texi
+-      cd $(srcdir); $(MAKEINFO) vip.texi
+-vip.dvi: vip.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/vip.texi
+-
+-../info/viper: viper.texi
+-      cd $(srcdir); $(MAKEINFO) viper.texi
+-viper.dvi: viper.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/viper.texi
+-
+-../info/widget: widget.texi
+-      cd $(srcdir); $(MAKEINFO) widget.texi
+-widget.dvi: widget.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/widget.texi
+-
+ ../info/efaq: faq.texi
+       cd $(srcdir); $(MAKEINFO) faq.texi
+ faq.dvi: faq.texi
+       $(ENVADD) $(TEXI2DVI) ${srcdir}/faq.texi
+-../etc/GNU: gnu1.texi gnu.texi
+-      cd $(srcdir) && makeinfo --no-headers -o ../etc/GNU gnu1.texi
+-
+-../info/autotype: autotype.texi
+-      cd $(srcdir); $(MAKEINFO) autotype.texi
+-autotype.dvi: autotype.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/autotype.texi
+-
+-../info/calc: calc.texi
+-      cd $(srcdir); $(MAKEINFO) calc.texi
+-
+-calc.dvi: calc.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/calc.texi
+-
+-# This is produced with --no-split to avoid making files whose
+-# names clash on DOS 8+3 filesystems
+-../info/idlwave: idlwave.texi
+-      cd $(srcdir); $(MAKEINFO) --no-split idlwave.texi
+-idlwave.dvi: idlwave.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/idlwave.texi
+-
+-../info/eudc: eudc.texi
+-      cd $(srcdir); $(MAKEINFO) eudc.texi
+-eudc.dvi: eudc.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/eudc.texi
+-
+-../info/ebrowse: ebrowse.texi
+-      cd $(srcdir); $(MAKEINFO) ebrowse.texi
+-ebrowse.dvi: ebrowse.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/ebrowse.texi
+-
+-../info/woman: woman.texi
+-      cd $(srcdir); $(MAKEINFO) woman.texi
+-woman.dvi: woman.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/woman.texi
+-
+-../info/org: org.texi
+-      cd $(srcdir); $(MAKEINFO) org.texi
+-org.dvi: org.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/org.texi
+-
+-../info/url: url.texi
+-      cd $(srcdir); $(MAKEINFO) url.texi
+-url.dvi: url.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/url.texi
+-
+-../info/speedbar: speedbar.texi
+-      cd $(srcdir); $(MAKEINFO) speedbar.texi
+-speedbar.dvi: speedbar.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/speedbar.texi
+-
+-../info/tramp: tramp.texi trampver.texi
+-      cd $(srcdir); $(MAKEINFO) -D emacs tramp.texi
+-tramp.dvi: tramp.texi trampver.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/tramp.texi
+-
+-../info/ses: ses.texi
+-      cd $(srcdir); $(MAKEINFO) ses.texi
+-ses.dvi: ses.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/ses.texi
+-
+-../info/smtpmail: smtpmail.texi
+-      cd $(srcdir); $(MAKEINFO) smtpmail.texi
+-smtpmail.dvi: smtpmail.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/smtpmail.texi
+-
+-../info/flymake: flymake.texi
+-      cd $(srcdir); $(MAKEINFO) flymake.texi
+-flymake.dvi: flymake.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/flymake.texi
+-
+-../info/newsticker: newsticker.texi
+-      cd $(srcdir); $(MAKEINFO) newsticker.texi
+-newsticker.dvi: newsticker.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/newsticker.texi
+-
+-../info/rcirc: rcirc.texi
+-      cd $(srcdir); $(MAKEINFO) rcirc.texi
+-rcirc.dvi: rcirc.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/rcirc.texi
+-
+-../info/erc: erc.texi
+-      cd $(srcdir); $(MAKEINFO) erc.texi
+-erc.dvi: erc.texi
+-      $(ENVADD) $(TEXI2DVI) ${srcdir}/erc.texi
+-
+ mostlyclean:
+       rm -f *.log *.cp *.fn *.ky *.pg *.vr core *.tp *.core gnustmp.*
+Index: sid/configure.in
+===================================================================
+--- sid.orig/configure.in
++++ sid/configure.in
+@@ -3306,7 +3306,7 @@
+ AC_OUTPUT(Makefile lib-src/Makefile.c:lib-src/Makefile.in oldXMenu/Makefile \
+       man/Makefile lwlib/Makefile src/Makefile.c:src/Makefile.in \
+-      lisp/Makefile lispref/Makefile lispintro/Makefile leim/Makefile, [
++      lisp/Makefile leim/Makefile, [
+ ### Make the necessary directories, if they don't exist.
+ for dir in etc lisp ; do
diff --git a/debian/patches/misc-unseparated.diff b/debian/patches/misc-unseparated.diff
new file mode 100644 (file)
index 0000000..d489b1b
--- /dev/null
@@ -0,0 +1,73 @@
+* The following miscellaneous changes have been made.
+  Patch: misc-unseparated.diff
+
+  * Various documentation references have been adjusted for Debian.
+
+    References to /usr/local/... have been changed to
+    /usr/... as appropriate, etc.
+    
+Index: sid/etc/emacs.1
+===================================================================
+--- sid.orig/etc/emacs.1
++++ sid/etc/emacs.1
+@@ -424,28 +424,28 @@
+ manual is also included in the Emacs source distribution.
+ .PP
+ .SH FILES
+-/usr/local/share/info - files for the Info documentation browser.
++/usr/share/info - files for the Info documentation browser.
+ The complete text of the Emacs reference manual is included in a
+ convenient tree structured form.  Also includes the Emacs Lisp
+ Reference Manual, useful to anyone wishing to write programs in the
+ Emacs Lisp extension language.
+-/usr/local/share/emacs/$VERSION/lisp - Lisp source files and compiled files
++/usr/share/emacs/$VERSION/lisp - Lisp source files and compiled files
+ that define most editing commands.  Some are preloaded;
+ others are autoloaded from this directory when used.
+-/usr/local/libexec/emacs/$VERSION/$ARCH - various programs that are
+-used with GNU Emacs.
++/usr/lib/emacs/$VERSION/$ARCH - various programs that are used with
++GNU Emacs.
+-/usr/local/share/emacs/$VERSION/etc - various files of information.
++/usr/share/emacs/$VERSION/etc - various files of information.
+-/usr/local/share/emacs/$VERSION/etc/DOC.* - contains the documentation
++/usr/share/emacs/$VERSION/etc/DOC.* - contains the documentation
+ strings for the Lisp primitives and preloaded Lisp functions
+ of GNU Emacs.  They are stored here to reduce the size of
+ Emacs proper.
+ .br
+-/usr/local/share/emacs/$VERSION/etc/SERVICE lists people offering
++/usr/share/emacs/$VERSION/etc/SERVICE lists people offering
+ various services to assist users of GNU Emacs, including education,
+ troubleshooting, porting and customization.
+@@ -466,7 +466,7 @@
+ Please do not send anything but bug reports to this mailing list.
+ For more information about Emacs mailing lists, see the
+-file /usr/local/emacs/etc/MAILINGLISTS.  Bugs tend actually to be
++file /usr/share/emacs/$VERSION/etc/MAILINGLISTS.  Bugs tend actually to be
+ fixed if they can be isolated, so it is in your interest to report
+ them in such a way that they can be easily reproduced.
+ .SH UNRESTRICTIONS
+Index: sid/etc/NEWS
+===================================================================
+--- sid.orig/etc/NEWS
++++ sid/etc/NEWS
+@@ -38,6 +38,11 @@
+    http://www.emacswiki.org/cgi-bin/wiki/PythonMode
\f
++* Debian specific changes to Emacs
++
++Please see /usr/share/doc/emacs22-common/README.Debian.gz.
++
++\f
+ * Installation Changes in Emacs 22.1
+ ** You can build Emacs with Gtk+ widgets by specifying `--with-x-toolkit=gtk'
diff --git a/debian/patches/require-movemail-use-liblockfile.diff b/debian/patches/require-movemail-use-liblockfile.diff
new file mode 100644 (file)
index 0000000..1187b5e
--- /dev/null
@@ -0,0 +1,24 @@
+* The build will fail if liblockfile isn't selected for movemail.
+  Patch: require-movemail-use-liblockfile.diff
+  Author: Rob Browning <rlb@defaultvalue.org>
+  Added-by: Rob Browning <rlb@defaultvalue.org>
+
+  This makes sure the Debian Emacs won't accidentally be built with
+  the wrong locking strategy.  To disable this check, comment out
+  require-movemail-use-liblockfile.diff in debian/patches/series.
+
+Index: sid/lib-src/movemail.c
+===================================================================
+--- sid.orig/lib-src/movemail.c
++++ sid/lib-src/movemail.c
+@@ -167,6 +167,10 @@
+ /* Nonzero means this is name of a lock file to delete on fatal error.  */
+ char *delete_lockname;
++#ifndef MAIL_USE_MAILLOCK
++#error "Debian requires that mail locking be handled by liblockfile."
++#endif /* ndef MAIL_USE_MAILLOCK */
++
+ int
+ main (argc, argv)
+      int argc;
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644 (file)
index 0000000..43d4a61
--- /dev/null
@@ -0,0 +1,9 @@
+debian-startup.diff
+debian-adjust-mail-from-addresses.diff
+handle-dfsg-split.diff
+misc-unseparated.diff
+fix-vc-path.diff
+require-movemail-use-liblockfile.diff
+avoid-fakemail-mail-loss.diff
+version-mention-debian.diff
+autofiles.diff
diff --git a/debian/patches/version-mention-debian.diff b/debian/patches/version-mention-debian.diff
new file mode 100644 (file)
index 0000000..87c30e6
--- /dev/null
@@ -0,0 +1,20 @@
+* The output of (version) has been modified to indicate Debian modifications.
+  Patch: version-mention-debian.diff
+  Author: Rob Browning <rlb@defaultvalue.org>
+  Added-by: Rob Browning <rlb@defaultvalue.org>
+
+Index: sid/lisp/version.el
+===================================================================
+--- sid.orig/lisp/version.el
++++ sid/lisp/version.el
+@@ -55,8 +55,8 @@
+   (interactive "P")
+   (let ((version-string
+          (format (if (not (interactive-p))
+-                   "GNU Emacs %s (%s%s%s)\n of %s on %s"
+-                 "GNU Emacs %s (%s%s%s) of %s on %s")
++                   "GNU Emacs %s (%s%s%s)\n of %s on %s, modified by Debian"
++                 "GNU Emacs %s (%s%s%s) of %s on %s, modified by Debian")
+                  emacs-version
+                system-configuration
+                (cond ((featurep 'motif)
diff --git a/debian/rules b/debian/rules
new file mode 100755 (executable)
index 0000000..54a3ec9
--- /dev/null
@@ -0,0 +1,855 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+
+# This file is licensed under the terms of the Gnu Public License.
+# With the one additional provision that Ian Jackson's name may not be
+# removed from the file.
+
+# Copyright 1994,1995 Ian Jackson
+# Copyright 1998-2005 Rob Browning <rlb@defaultvalue.org>
+# Copyright 2004-2005 Jérôme Marant <jerome@debian.org>
+
+# Originally copied from the GNU Hello Debian rules file (1.3).
+# Modified for emacs by Mark Eichin <eichin@kitten.gen.ma.us>.
+# Debhelper support added via one of Joey Hess' example files.
+# See the debian/changelog for further historical information.
+
+# TODO:
+#
+#   Figure out what happened to fns-*.elc
+#   Should we set defaults for things like xsupport at the top here?
+#   Deal with build_binary_pkg and continue integration.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+SHELL := /bin/bash
+
+quilt := QUILT_PATCHES=debian/patches quilt
+
+deb_trash :=
+
+pf := set -o pipefail
+
+# For now we assume that emacs' versioning scheme is always
+# MAJOR.MINORtinyrev where MAJOR and MINOR are integers and tinyrev is
+# an optional lowercase letter (or letters).  We also assume that
+# upstream uses a numbering scheme that sorts in a "Debian friendly"
+# way.  So far that's always been true.  If it becomes false, some of
+# the values below will have to be set manually.
+
+# At the moment, we try to make it so that a "debian/rules clean" will
+# get you back to the same state you were in before "debian/rules
+# build".  With the original upstream source that's somewhat tricky
+# because they ship the .elc files, but we need to re-build them when
+# we patch the corresponding .el files.  This is further complicated
+# by the fact that any of these .el files may have macros, and if
+# those are changed, then any other .el files that use those macros
+# must also be recompiled.  Over the years, we've tried various ways
+# to handle this problem, originally by trying to keep track of which
+# files need to be recompiled and only recompiling those, then later
+# by just re-building all the .elc files with "make bootstrap".  In
+# either case, if you don't want to have diff bloat, you have to do
+# something to keep track of the original .elc files so you can
+# restore them during make clean.
+
+# All of this was a lot of work, and was using quite a bit of
+# unnecessary storage both in the .orig.tar.gz and during the package
+# build.  So in order to avoid this, and to dramatically simplify
+# things, we now just remove the .elc files from the upstream
+# distribution whenever we create the debian .orig.tar.gz file for a
+# given upstream release.  Since were always clobbering all of the
+# .elc files during the package build anyway, this shouldn't be any
+# great loss, and it also means that "debian/rules clean" now needs to
+# be little more than a "make distclean" followed by a purge of all
+# the remaining .elc files.
+
+# NOTE -- emacs doesn't respect .elc files in VPATH build.  They're
+# modified in srcdir, not builddir.  We don't worry about this because
+# it shouldn't affect our builds ATM, but if we ever have more than
+# one emacs configuration which could produce differing .elc files,
+# we'll need to be careful.  We'll probably have to build completely
+# separate packages from completely separate source trees.
+
+# In order to keep the autofiles up to date, but avoid any alterations
+# outside of ./debian, we keep the changes made by running a new
+# autoconf, etc. in patches/autofiles.diff.  This patch can be
+# automatically regenerated by running "debian/rules autofiles-sync",
+# and this patch should always be maintained as the last one in the
+# patch series.
+
+# Note that we use quilt to handle the debian patches.  One of the
+# biggest differences between quilt and say dpatch is that you have to
+# explicitly "quilt add" a file to a patch before you edit it.  See
+# "man quilt" for details..
+
+# If the source tree ever ends up in an untenable "can't go forward,
+# can't go back" state with respect to patching, you can always start
+# over by just moving the current debian directory to a newly unpacked
+# orig.tar.gz tree.  Note that f you were in the process of editing a
+# patch, you will lose those edits, but shouldn't lose anything else.
+# This process just reverts all of the upstream files and abandons the
+# volatile "what's been done to the current tree" state that quilt
+# maintains in ./.pc.  All of the actual patches are stored in
+# debian/patches and should be unharmed.
+
+######################################################################
+# Important top-level targets:
+#
+# check-vars - displays how the version number has been parsed.
+# buildpackage - build binary packages via dpkg-buildpackage w/suitable args
+# prepare-release - prepare and check debs for upload.
+# autofiles-sync - force a new autofiles.diff to be generated.
+#
+######################################################################
+
+# The name of the Debian source package
+src_name := $(shell $(pf); dpkg-parsechangelog | egrep '^Source:')
+src_name := $(shell $(pf); echo $(src_name) | perl -pe 's/Source:\s+//o')
+
+# The version from the changelog (i.e. 20.5-1)
+debian_ver := $(shell $(pf); dpkg-parsechangelog | egrep '^Version:')
+debian_ver := $(shell $(pf); echo $(debian_ver) | perl -pe 's/Version:\s+//o')
+# The Debian revision (i.e. the 1 from 20.5-1)
+# Always everything after the last '-'
+debian_rev := $(shell $(pf); echo $(debian_ver) | perl -pe 's/.*-//o')
+
+# The official upstream version defined by emacs-version in lisp/version.el.
+# The extraction method matches the code in the upstream configure.in.
+nominal_ver := \
+  $(shell $(pf); grep 'defconst[        ]*emacs-version' lisp/version.el \
+    | sed -e 's/^[^"]*"\([^"]*\)".*$$/\1/')
+
+# This must be the version that's actually used at runtime for things
+# like load-path.  It may not be the same as the upstream version
+# (i.e. when you have upstream 20.5a, the functional version may still
+# be 20.5), so sometimes we may have to do this by hand.
+runtime_ver := $(shell $(pf); echo $(nominal_ver) | perl -pe 's/[a-z]+$$//o')
+
+major_ver := $(shell $(pf); echo $(runtime_ver) | perl -pe 's/\..*$$//o')
+minor_ver := $(shell $(pf); echo $(runtime_ver) | perl -pe 's/^[^.]*\.//o')
+
+# version for the debian source, i.e. if the upstream is 21.3, this
+# might be 21.3, or it might be 21.3+1 if we've had to have more than
+# one re-release of the upstream source.  Rare, but it happens...
+# Always everything before the last '-'
+debsrc_ver := $(shell $(pf); echo $(debian_ver) | perl -pe 's/-[^-]+$$//o')
+
+# upstream version - the actual upstream version, i.e. 21.4a, minus any +foo
+upstream_ver := $(shell $(pf); echo $(debsrc_ver) | perl -pe 's/\+[^+]+$$//o')
+
+deb_orig_tgz := $(src_name)_$(debsrc_ver).orig.tar.gz
+# name of the orig_tgz unpack directory
+deb_orig_tgz_dir := emacs-$(runtime_ver)
+
+######################################################################
+# Customizable variables
+
+# The flavor (i.e. emacs21) currently matches the source package name.
+flavor := $(src_name)
+
+bin_priority := 25
+
+# This might also be something like 2006-09-09 for snapshots.
+menu_ver := $(upstream_ver)
+
+info_subdir := emacs-$(major_ver)
+
+######################################################################
+
+# Should these be exported like this (as autotools-dev recommends for
+# the two vars below) or not?
+export DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
+export DEB_HOST_GNU_CPU ?= $(shell dpkg-architecture -qDEB_HOST_GNU_CPU)
+
+# As recommended by /usr/share/doc/autotools-dev/README.Debian.gz.
+# Handle cross-compiling and don't make ./configure guess.
+export DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+confflags += --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE)
+
+LDFLAGS   := -g
+CFLAGS    := -DDEBIAN -g
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+  CFLAGS += -O0
+else # not noopt
+  ifeq (m68k,$(DEB_HOST_ARCH))
+    # fix problem with newer versions of gcc on m68k
+    # -O2 causes a build failure (broken byte compiler)
+    CFLAGS += -O1
+  else # neq (m68k,$(DEB_HOST_ARCH))
+    CFLAGS += -O2
+  endif # neq (m68k,$(DEB_HOST_ARCH))
+endif # not noopt
+
+target := $(DEB_HOST_GNU_TYPE)
+movemail_bin := usr/lib/emacs/$(runtime_ver)/$(target)/movemail
+
+# These files may be modified in the *source* tree during the build.
+# Wonder if we could patch emacs to copy/use these files to/from the
+# build tree... (See Makefile.in's AUTOGENEL definition.)
+protected_files := \
+  config.guess \
+  config.sub \
+  lisp/cus-load.el \
+  lisp/finder-inf.el \
+  lisp/loaddefs.el \
+  lisp/subdirs.el
+
+# Info files that are going to show up in the main dir.
+main_dir_info_files := \
+  dired-x \
+  efaq
+
+# Files that the build stage depends on (may also be listed in other vars).
+persistent_autogen_build_files := debian/control debian/copyright
+nonpersistent_autogen_build_files :=
+
+# These files must always exist, i.e. can't ever be cleaned.
+persistent_autogen_install_files :=
+nonpersistent_autogen_install_files := \
+  debian/$(flavor)-bin-common.postinst \
+  debian/$(flavor)-bin-common.prerm \
+  debian/$(flavor)-common.README.Debian \
+  debian/$(flavor)-common.docs \
+  debian/$(flavor)-common.postinst \
+  debian/$(flavor)-common.prerm \
+  debian/$(flavor)-nox.README.Debian \
+  debian/$(flavor)-nox.menu \
+  debian/$(flavor)-nox.postinst \
+  debian/$(flavor)-nox.prerm \
+  debian/$(flavor)-gtk.README.Debian \
+  debian/$(flavor)-gtk.menu \
+  debian/$(flavor)-gtk.postinst \
+  debian/$(flavor)-gtk.prerm \
+  debian/$(flavor).README.Debian \
+  debian/$(flavor).desktop \
+  debian/$(flavor).menu \
+  debian/$(flavor).postinst \
+  debian/$(flavor).prerm
+
+autogen_build_files := \
+  $(nonpersistent_autogen_build_files) $(persistent_autogen_build_files)
+
+autogen_install_files := \
+  $(nonpersistent_autogen_install_files) $(persistent_autogen_install_files)
+
+persistent_autogen_files := \
+  $(persistent_autogen_build_files) $(persistent_autogen_install_files)
+
+nonpersistent_autogen_files := \
+  $(nonpersistent_autogen_build_files) $(nonpersistent_autogen_install_files)
+
+
+# Build directories
+pkgdir_common := $(CURDIR)/debian/$(flavor)-common
+pkgdir_bin_common := $(CURDIR)/debian/$(flavor)-bin-common
+pkgdir_x := $(CURDIR)/debian/$(flavor)
+pkgdir_nox := $(CURDIR)/debian/$(flavor)-nox
+pkgdir_gtk := $(CURDIR)/debian/$(flavor)-gtk
+pkgdir_el := $(CURDIR)/debian/$(flavor)-el
+
+install_dir_x := $(CURDIR)/debian/install-x
+install_dir_nox := $(CURDIR)/debian/install-nox
+install_dir_gtk := $(CURDIR)/debian/install-gtk
+
+local_lpath := /etc/$(flavor):/etc/emacs
+local_lpath := $(local_lpath):/usr/local/share/emacs/$(runtime_ver)/site-lisp
+local_lpath := $(local_lpath):/usr/local/share/emacs/site-lisp
+local_lpath := $(local_lpath):/usr/share/emacs/$(runtime_ver)/site-lisp
+local_lpath := $(local_lpath):/usr/share/emacs/site-lisp
+
+# This shouldn't be needed as of 20.3
+local_lpath := $(local_lpath):/usr/share/emacs/$(runtime_ver)/leim
+
+# Installation local_lpath
+local_lpath_install := $(pkgdir_common)/$(subst :,:$(pkgdir_common)/,$(local_lpath))
+
+define checkroot
+  test root = "`whoami`"
+endef
+
+define checkdir
+  @if ! test -s debian/patches/autofiles.diff; \
+  then \
+    echo; \
+    echo "The Debian autofiles patch is not available."; \
+    echo "Please run this command:"; \
+    echo "  debian/rules autofiles-sync"; \
+    echo; \
+    false; \
+  fi
+  dpkg-parsechangelog > /dev/null
+  dh_testdir debian/emacsVER.postinst
+  @if ! test -f src/emacs.c; \
+  then \
+    echo; \
+    echo -n "The upstream source does not appear to be available."; \
+    echo "  Please put the contents"; \
+    echo -n "of $(deb_orig_tgz) into the"; \
+    echo " current directory."; \
+    echo; \
+    false; \
+  fi
+endef
+
+define build_cmd
+  $(MAKE) CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)"
+endef
+
+# If we ever need to do the stripping outside of dh_strip, just add an
+# INSTALL_STRIP="-s" to the make vars below.
+
+emacs_inst = (cd debian/$(1) && \
+  PATH=$(CURDIR)/debian/bin/info:$(PATH) $(MAKE) install \
+    DESTDIR=$(2) \
+    infodir=/usr/share/info/emacs-$(major_ver) \
+    localstatedir=/var \
+    manext=.1$(flavor))
+
+define patch
+  $(quilt) push -a
+endef
+
+define unpatch
+  test -z "$$($(quilt) applied)" || $(quilt) pop -a
+  rm -f debian/stamp/patch
+  rm -rf .pc
+endef
+
+define cleanup_all
+  # distclean goes first so we clean using patched code
+  rm -f debian/stamp/setup
+  rm -f debian/stamp/configure
+  rm -f debian/stamp/build
+  -$(MAKE) distclean
+  cd info && rm -f $$(ls | grep -v COPYING)
+  dh_clean
+  $(unpatch)
+  #   now clean up bits in the source tree that the above didn't handle
+  find -name "*.elc" | xargs --no-run-if-empty rm
+  if [ -e debian/protected-files.tgz ]; then \
+    tar xzpf debian/protected-files.tgz; \
+  fi
+  rm -f debian/protected-files.tgz
+  #   now clean up everything else (mostly ./debian related stuff)
+  find -name '*~' | xargs --no-run-if-empty rm -f
+  rm -f debian/substvars
+  rm -f $(nonpersistent_autogen_files)
+  rm -rf \
+    debian/build-x \
+    debian/install-x \
+    debian/build-nox \
+    debian/install-nox \
+    debian/build-gtk \
+    debian/install-gtk \
+    debian/files*
+  rm -rf debian/*.tmp
+  rm -rf $(deb_trash)
+  rm -rf .pc
+  test ! -e debian/stamp || rmdir debian/stamp
+endef
+
+define update_debian_autofiles_quilt
+  $(cleanup_all)
+  # Make sure autofiles.diff exists, otherwise patching will fail.
+  if ! test -e debian/patches/autofiles.diff; \
+  then \
+    touch debian/patches/autofiles.diff; \
+  fi;
+  $(patch)
+  test "$$($(quilt) top)" = autofiles.diff
+  $(quilt) pop
+  mkdir -p debian/tmp-autofiles/old
+  $(pf); tar cpSf - --exclude ./debian --exclude ./.pc . \
+    | tar -C debian/tmp-autofiles/old -xpSf -
+  cp -a debian/tmp-autofiles/old debian/tmp-autofiles/new
+  cd debian/tmp-autofiles/new && aclocal
+  cd debian/tmp-autofiles/new && autoconf
+  cd debian/tmp-autofiles/new && autoheader
+  cd debian/tmp-autofiles/new && rm -rf autom4te.cache
+  cd debian/tmp-autofiles && diff -ruN old new > new.diff; \
+    test $$? -eq 1
+  $(quilt) import -f -P autofiles.diff debian/tmp-autofiles/new.diff
+  $(quilt) header -r autofiles.diff < debian/autofiles-diff-header
+  $(patch)
+  $(cleanup_all)
+endef
+deb_trash += debian/tmp-autofiles
+
+# If we ever need it, we can create a copy that doesn't assume ./debian/
+define deb_sub
+  perl -p \
+    -e "s|\@PKG_NAME\@|$(pkg_name)|go;" \
+    -e "s|\@MAJOR_VERSION\@|$(major_ver)|go;" \
+    -e "s|\@MINOR_VERSION\@|$(minor_ver)|go;" \
+    -e "s|\@FULL_VERSION\@|$(runtime_ver)|go;" \
+    -e "s|\@PACKAGE_VERSION\@|$(debian_ver)|go;" \
+    -e "s|\@DEBIAN_REV\@|$(deb_rev)|go;" \
+    -e "s|\@NOMINAL_VERSION\@|$(nominal_ver)|go;" \
+    -e "s|\@UPSTREAM_VERSION\@|$(upstream_ver)|go;" \
+    -e "s|\@DEBSRC_VERSION\@|$(debsrc_ver)|go;" \
+    -e "s|\@DEB_FLAVOR\@|$(flavor)|go;" \
+    -e "s|\@MENU_VERSION\@|$(menu_ver)|go;" \
+    -e "s|\@INFO_FILES\@|$(main_dir_info_files)|go;" \
+    -e "s|\@INFO_SUBDIR\@|$(info_subdir)|go;" \
+    -e "s|\@X_SUPPORT\@|$(xsupport)|go;" \
+    -e "s|\@BIN_PRIORITY\@|$(bin_priority)|go;" \
+    -e "s|\@MOVEMAIL_BIN\@|$(movemail_bin)|go;" \
+      < $(1) > $(2)
+endef
+
+check-vars:
+       @echo "upstream_ver: $(upstream_ver)"
+       @echo "debian_ver: $(debian_ver)"
+       @echo "debsrc_ver: $(debsrc_ver)"
+       @echo "debian_rev: $(debian_rev)"
+       @echo "nominal_ver: $(nominal_ver)"
+       @echo "runtime_ver: $(runtime_ver)"
+       @echo "major_ver: $(major_ver)"
+       @echo "minor_ver: $(minor_ver)"
+.PHONY: check-vars
+
+.PHONY: check-diff
+check-diff: clean
+       $(checkdir)
+       test -r ../$(deb_orig_tgz)
+       rm -rf debian/tmp-diff && mkdir debian/tmp-diff
+       cd debian/tmp-diff && tar xzpSf ../../../$(deb_orig_tgz)
+       cd debian/tmp-diff && mv $(deb_orig_tgz_dir) orig
+
+       mkdir debian/tmp-diff/new
+       $(pf); tar cpf - --exclude './debian' --exclude './.pc' . \
+         | (cd debian/tmp-diff/new && tar xpf -)
+
+       @echo
+       @echo "########################################"
+       @echo "### Diffs outside ./debian"
+       @cd debian/tmp-diff && diff -ruN orig new
+       @echo "########################################"
+       @echo "### Empty file list differences"
+       @diff -u \
+         <(cd debian/tmp-diff/orig && find -size 0) \
+         <(cd debian/tmp-diff/new && find -size 0) \
+           > debian/tmp-diff/empty-files.diff || test $$? -eq 1
+       @cat debian/tmp-diff/empty-files.diff
+       @test ! -s debian/tmp-diff/empty-files.diff || false
+       @echo "########################################"
+       @rm -rf debian/tmp-diff
+
+deb_trash += debian/tmp-diff
+
+
+buildpackage:
+       $(checkdir)
+       dpkg-buildpackage -D -us -uc -rfakeroot -i'\.git|\.pc'
+.PHONY: buildpackage
+
+prepare-release:
+       $(checkdir)
+        # don't want to be root -- using fakeroot below.
+        # also, stacking fakeroots seems to cause trouble generating diff.
+       @test "`whoami`" != root || \
+         (echo "please run prepare-release as a normal user (not root)"; \
+          false)
+        # check for any uncommitted changes
+       @if test $$(cd debian && git-diff-files | wc -c) -ne 0; \
+       then \
+         read -p "Uncommitted changes.  Continue? [y/n] "; \
+          if test "$${REPLY}" != y; \
+         then \
+           false; \
+         fi; \
+       fi
+        # TODO: make sure we actually installed the binary.
+        # TODO: run tests (use a check target?)
+       @read -p "Regenerate autofiles.diff? [y/n] "; \
+          if test "$${REPLY}" == y; \
+         then \
+           $(MAKE) -f debian/rules autofiles-sync; \
+         else \
+           true; \
+         fi
+       $(MAKE) -f debian/rules clean
+       $(MAKE) -f debian/rules buildpackage
+       test -f ../$(src_name)_$(debian_ver).diff.gz
+       @if [ $$(zgrep '^---' \
+                  ../$(src_name)_$(debian_ver).diff.gz  \
+                    | grep -v /debian/ | wc -c) -ne 0 ]; \
+       then \
+         echo "Diffs outside debian/ found, please fix and retry."; \
+         echo "This probably means either something wasn't cleaned"; \
+         echo "properly, or you need to do some work in debian/patches."; \
+         false; \
+       else \
+         echo "Everything looks OK.  Ready for release."; \
+         echo "Don't forget to run debsign if needed."; \
+       fi
+.PHONY: prepare-release 
+
+
+# we don't sync this automatically on clean because it's expensive and
+# should only be done by a maintainer with time to deal with any mess
+# it might create.
+autofiles-sync:
+       $(update_debian_autofiles_quilt)
+.PHONY: autofiles-sync
+
+debian-sync: $(persistent_autogen_files)
+
+.PHONY: force-debian-sync debian-sync
+
+debian/$(flavor).%: xsupport := "x"
+debian/$(flavor).%: pkg_name := $(flavor)
+
+debian/$(flavor)-nox.%: xsupport := "nox"
+debian/$(flavor)-nox.%: pkg_name := $(flavor)-nox
+
+debian/$(flavor)-gtk.%: xsupport := "gtk"
+debian/$(flavor)-gtk.%: pkg_name := $(flavor)-gtk
+
+debian/%: debian/%.in debian/changelog
+       $(call deb_sub,$<,$@)
+
+debian/$(flavor)-bin-common.%: debian/emacsVER-bin-common.% debian/changelog
+       $(call deb_sub,$<,$@)
+
+debian/$(flavor)-common.%: debian/emacsVER-common.% debian/changelog
+       $(call deb_sub,$<,$@)
+
+debian/$(flavor)-el.%: debian/emacsVER-el.% debian/changelog
+       $(call deb_sub,$<,$@)
+
+debian/$(flavor).%: debian/emacsVER.% debian/changelog
+       $(call deb_sub,$<,$@)
+
+debian/$(flavor)-nox.%: debian/emacsVER.% debian/changelog
+       $(call deb_sub,$<,$@)
+
+debian/$(flavor)-gtk.%: debian/emacsVER.% debian/changelog
+       $(call deb_sub,$<,$@)
+
+debian/$(flavor)-common.README.Debian: \
+  debian/emacsVER-common.README debian/patches/*.diff debian/patches/series
+       cd debian && \
+         csplit -s -f emacsVER-common.README. \
+         emacsVER-common.README '/@@PATCH_LIST_HERE@@/'
+       cp debian/emacsVER-common.README.00 debian/emacsVER-common.README.tmp
+       for p in $$($(quilt) series); do $(quilt) header $$p; done \
+         >> debian/emacsVER-common.README.tmp
+       tail -n +2 \
+         < debian/emacsVER-common.README.01 \
+         >> debian/emacsVER-common.README.tmp
+       mv debian/emacsVER-common.README.tmp $@
+
+deb_trash += debian/emacsVER-common.README.tmp
+deb_trash += debian/emacsVER-common.README.00
+deb_trash += debian/emacsVER-common.README.01
+
+debian/protected-files.tgz:
+       tar czpSf debian/protected-files.tgz.tmp $(protected_files)
+       mv debian/protected-files.tgz.tmp $@
+
+debian/stamp/patch: debian/protected-files.tgz
+       $(checkdir)
+       $(patch)
+       mkdir -p $(dir $@) && touch $@
+
+debian/stamp/setup: debian/stamp/patch
+       $(checkdir)
+       cp /usr/share/misc/config.sub .
+       cp /usr/share/misc/config.guess .
+       $(pf); find debian/bin -type f | xargs chmod 775
+       mkdir -p $(dir $@) && touch $@
+
+# common configure flags
+confflags += --prefix=/usr
+confflags += --sharedstatedir=/var/lib
+confflags += --libexecdir=/usr/lib
+confflags += --localstatedir=/var/lib
+confflags += --infodir=/usr/share/info
+confflags += --mandir=/usr/share/man
+confflags += --with-pop=yes
+confflags += --enable-locallisppath=$(local_lpath)
+
+# x configure flags
+confflags_x := $(confflags) 
+confflags_x += --with-x=yes
+confflags_x += --with-x-toolkit=athena
+confflags_x += --with-toolkit-scroll-bars
+
+# nox configure flags
+confflags_nox := $(confflags) 
+confflags_nox += --with-x=no
+
+# gtk configure flags
+confflags_gtk := $(confflags) 
+confflags_gtk += --with-x=yes
+confflags_gtk += --with-x-toolkit=gtk
+confflags_gtk += --with-toolkit-scroll-bars
+
+configure: debian/stamp/configure
+.PHONY: configure
+
+define cfg_tree
+  rm -rf $(1)
+  mkdir $(1)
+  cd $(1) && CFLAGS="$(CFLAGS)" ../../configure $(confflags) $(2)
+endef
+
+# For those who prefer the old-style non-toolkit scrollbars, just add
+# --without-toolkit-scroll-bars to the build-x cfg_tree line below.
+# The resulting emacsXY package will have the old scrollbars.
+
+debian/stamp/configure: debian/stamp/setup
+       $(checkdir)
+       $(call cfg_tree,debian/build-x,$(confflags_x))
+       $(call cfg_tree,debian/build-nox,$(confflags_nox))
+       $(call cfg_tree,debian/build-gtk,$(confflags_gtk))
+       mkdir -p debian/stamp && touch $@
+
+build: debian/stamp/build
+.PHONY: build
+
+debian/stamp/build: debian/stamp/configure $(autogen_build_files)
+       $(checkdir)
+        # first build has to be a bootstrap build
+       cd debian/build-x && $(build_cmd) bootstrap
+       cd debian/build-nox && $(build_cmd)
+       cd debian/build-gtk && $(build_cmd)
+       mkdir -p debian/stamp && touch $@
+
+
+define install_common_binpkg_bits
+  # args: (1) srcdir (2) pkgdir (3) pkgname (4) bin-suffix
+
+  install -d $(2)/usr/bin/
+  test -f $(1)/usr/bin/emacs-*
+  cp -a $(1)/usr/bin/emacs-* $(2)/usr/bin/$(flavor)-$(4)
+  dh_link -p$(3) usr/bin/$(flavor)-$(4) usr/bin/$(flavor)
+
+  install -d $(2)/usr/share/emacs/$(runtime_ver)/etc
+  cp -a $(1)/usr/share/emacs/$(runtime_ver)/etc/DOC-$(runtime_ver).1 \
+       $(2)/usr/share/emacs/$(runtime_ver)/etc/
+
+  install -d $(2)/usr/share/man/man1
+  dh_link -p$(3) \
+    usr/share/man/man1/emacs.1$(flavor).gz \
+    usr/share/man/man1/$(flavor).1.gz
+  dh_link -p$(3) \
+    usr/share/man/man1/emacs.1$(flavor).gz \
+    usr/share/man/man1/$(flavor)-$(4).1.gz
+
+endef
+
+
+install: debian/stamp/build $(autogen_install_files)
+       $(checkdir)
+       dh_testdir
+       dh_testroot
+       dh_clean -k
+       dh_installdirs
+
+       rm -rf $(install_dir_x) $(install_dir_nox) $(install_dir_gtk)
+
+#      $(call emacs_inst,build-x,$(install_dir_x))
+#      $(call emacs_inst,build-nox,$(install_dir_nox))
+#      $(call emacs_inst,build-gtk,$(install_dir_gtk))
+
+        # Use X install dir for the common packages too.
+       $(call emacs_inst,build-x,$(install_dir_x))
+
+        ##################################################
+        # emacsXY-common
+
+       cp -a $(install_dir_x)/* $(pkgdir_common)
+
+       rm -r $(pkgdir_common)/usr/bin
+       rm -r $(pkgdir_common)/usr/lib
+
+       cd $(pkgdir_common)/usr/share/emacs/$(runtime_ver)/etc \
+         && test -f DOC-$(runtime_ver).*
+       cd $(pkgdir_common)/usr/share/emacs/$(runtime_ver)/etc \
+         && rm DOC-$(runtime_ver).*
+
+        # lisp path directories
+       install -d $(pkgdir_common)/etc/$(flavor)/site-start.d
+       install -d $(pkgdir_common)/usr/share/$(flavor)
+
+        # The version-specific site-lisp dir, say emacs/21.1/site-lisp, needs
+        # to be in share/FLAVOR so that as we upgrade from 21.1 to 21.2,
+        # etc., add-on package bits don't get left behind.
+       mv $(pkgdir_common)/usr/share/emacs/$(runtime_ver)/site-lisp \
+               $(pkgdir_common)/usr/share/$(flavor)
+       dh_link -p$(flavor)-common usr/share/$(flavor)/site-lisp \
+                       usr/share/emacs/$(runtime_ver)/site-lisp
+
+        # This is a duplicate of the file in FLAVOR/site-lisp
+       rm $(pkgdir_common)/usr/share/emacs/site-lisp/subdirs.el
+
+       cd $(pkgdir_common)/usr/share/emacs/$(runtime_ver)/etc/images/icons \
+         && convert emacs_16.png emacs_16.xpm
+
+       cd $(pkgdir_common)/usr/share/emacs/$(runtime_ver)/etc/images/icons \
+         && convert emacs_32.png emacs_32.xpm
+
+        # Mangle info files.
+       chmod 755 debian/mangle-info
+       for f in $(main_dir_info_files); \
+       do \
+         DEBIAN_INFO_PREFIX=$(info_subdir) \
+           debian/mangle-info \
+             $(pkgdir_common)/usr/share/info/$(info_subdir)/$$f; \
+       done
+
+       perl -pi -e "s|man1/etags\\.1|man1/etags\\.1$(flavor)|" \
+         $(pkgdir_common)/usr/share/man/man1/ctags.1$(flavor)
+
+        # Remove extra license files
+       rm $(pkgdir_common)/usr/share/emacs/$(runtime_ver)/etc/COPYING
+       rm $(pkgdir_common)/usr/share/emacs/$(runtime_ver)/lisp/COPYING
+
+       dh_link -p$(flavor)-common \
+         usr/share/emacs/$(runtime_ver)/etc usr/share/doc/$(flavor)-common/etc
+
+        # Install replacements for non-free files that can be reached
+        # through C-h
+       for f in THE-GNU-PROJECT; \
+       do \
+         sed \
+           -e "s/@FILE@/$$f/g" \
+           -e "s/@MAJOR_VERSION@/$(major_ver)/g" \
+           $(CURDIR)/debian/missing-file.dfsg > \
+           $(pkgdir_common)/usr/share/emacs/$(runtime_ver)/etc/$$f.dfsg ; \
+       done
+
+       $(pf); cd $(pkgdir_common) && \
+         find -name "*.elc" | perl -pe 's/\.elc$$/\.el/o' | xargs rm -f
+
+       $(pf); cd $(pkgdir_common) && \
+         find -name "*.elc" | perl -pe 's/\.elc$$/\.el\.gz/o' | xargs rm -f
+
+        # Remove extraneous info dir file.
+       rm $(pkgdir_common)/usr/share/info/emacs-$(major_ver)/dir
+       rm $(pkgdir_common)/usr/share/info/emacs-$(major_ver)/dir.old
+
+        # Make sure /usr/local dir doesn't exist.
+       rm -r $(pkgdir_common)/usr/local
+
+        ##################################################
+        # emacsXY-bin-common
+
+        # Move common binaries to emacs-bin-common.
+       install -d $(pkgdir_bin_common)/usr
+       cp -a $(install_dir_x)/usr/bin $(pkgdir_bin_common)/usr
+       cp -a $(install_dir_x)/usr/lib $(pkgdir_bin_common)/usr
+
+        # Make sure there's just one.
+       test -f $(pkgdir_bin_common)/usr/bin/emacs-*
+       rm $(pkgdir_bin_common)/usr/bin/{emacs,emacs-*}
+
+        # Set up movemail.
+       chown root.mail $(pkgdir_bin_common)/$(movemail_bin)
+       chmod g+s $(pkgdir_bin_common)/$(movemail_bin)
+
+        # Set up alternatives.
+       alternatives=`ls $(pkgdir_bin_common)/usr/bin | xargs` && \
+         set -x && \
+         for f in debian/$(flavor)-bin-common.*; \
+         do \
+           perl -pwi -e "s|\@ALTERNATIVES\@|$${alternatives}|go" $$f ; \
+         done
+
+       for f in `ls $(pkgdir_bin_common)/usr/bin`; \
+       do \
+         mv $(pkgdir_bin_common)/usr/bin/$$f \
+            $(pkgdir_bin_common)/usr/bin/$$f.$(flavor) ; \
+       done
+
+        ##################################################
+        # emacsXY
+       $(call install_common_binpkg_bits,\
+         $(install_dir_x),$(pkgdir_x),$(flavor),x)
+
+        # install desktop entry
+       install -d $(pkgdir_x)/usr/share/applications
+       install -m 0644 \
+         debian/$(flavor).desktop $(pkgdir_x)/usr/share/applications/
+
+        ##################################################
+        # emacsXY-nox
+       $(call emacs_inst,build-nox,$(install_dir_nox))
+       $(call install_common_binpkg_bits,\
+         $(install_dir_nox),$(pkgdir_nox),$(flavor)-nox,nox)
+       rm -rf $(install_dir_nox)
+
+        ##################################################
+        # emacsXY-gtk
+       $(call emacs_inst,build-gtk,$(install_dir_gtk))
+       $(call install_common_binpkg_bits,\
+         $(install_dir_gtk),$(pkgdir_gtk),$(flavor)-gtk,gtk)
+       rm -rf $(install_dir_gtk)
+
+        ##################################################
+        # emacsXY-el
+
+       $(pf); \
+       (cd $(install_dir_x) && find -name "*.el" -o -name "*.el.gz" -print0 \
+        | tar cpf - --null --files-from -) \
+          | (cd $(pkgdir_el) && tar xpf -)
+
+        ##################################################
+        # final cleanup
+       rm -rf $(install_dir_x)
+       rm -rf $(install_dir_nox)
+       rm -rf $(install_dir_gtk)
+
+
+binary-indep: build install
+       $(checkdir)
+       dh_testdir -i
+       dh_testroot -i
+       dh_installchangelogs -i
+       dh_installdocs -i
+       dh_link -i
+       dh_strip -i
+       dh_compress -i
+       dh_fixperms -i
+       dh_installdeb -i
+       dh_shlibdeps -i
+       dh_gencontrol -i
+       dh_md5sums -i
+       dh_builddeb -i
+
+binary-arch: build install
+       $(checkdir)
+       dh_testdir -a
+       dh_testroot -a
+       dh_installinfo -a
+       dh_installman -a
+       dh_installchangelogs -a
+       dh_installdocs -a
+       dh_installexamples -a
+#      dh_install -a
+       dh_installmenu -a
+       dh_link -a
+       dh_strip -a
+       dh_compress -a
+       dh_fixperms -a -X$(movemail_bin)
+       dh_installdeb -a
+       dh_shlibdeps -a
+       dh_gencontrol -a
+       dh_md5sums -a
+       dh_builddeb -a
+
+binary: binary-indep binary-arch
+
+clean: debian-sync
+       $(checkdir)
+       $(cleanup_all)
+
+source diff:
+       @echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
+
+.PHONY: binary binary-arch binary-indep clean